Effective Java读书笔记
package chape8;
/**
* 第8章
* 第46條:
* for-each循環優先于for循環
* for(Element e : c)
* {
* dosomthing(e);
* }
* 这个是java1.5以上的版本的for循环的首先考虑的写法
* 以下是java1.5以前的寫法
* for (Iterator it = c.iterator();it.hasNext();)
{
it.next();
}
這兩個循環的方法都比while方法要好,45條中的複製的錯誤在用第一種循環就
可以避免;
總之for each在簡潔和預防bug方面有著傳統的for循環無法比的優勢;並且沒有性能
損失。應該竟可能使用for-each 但是有下麵三種情況無法使用for each
1.過濾:如果遍历一个集合 并删除选定的元素 就要用显示的迭代器,这样可以调用
他的remove方法
2.转换:要遍历列表或者数组 并取代他的部分或者全部元素值 要用到数组的索引
3.平行迭代要并行遍历多个集合;
* @author lee
*
*/
public class Chape46 {
/**
* @param args
*/
public static void main(String[] args) {
// TODO Auto-generated method stub
}
}
相关文档:
学习java的30个目标----如果这30条你做的差不多了,jAVA水平就当然不用说了,好好努力吧
1.你需要精通面向对象分析与设计(OOA/OOD)、涉及模式(GOF,J2EEDP)以及综合模式。你应该十分了解UML,尤其是class,object,interaction以及statediagrams。
2.你需要学习JAVA语言的基础知识以及它的核 ......
在JAVA中:
1. 函数重载是一个类中声明了多个同名的方法,但有不同的参数个数和参数类型。
2. 函数重构是指在子类中声明与父类同名的方法,从而覆盖了父类的方法。重构解决了子类与父类的差异问题。
例子如下:
//重载
class A {
public d (){};
public d (q){};
public d (q,w){};
}
//重写 ......
3.package com.ncs.opts.tools;
import java.util.HashMap;
import java.util.Map;
import com.ncs.opts.common.icp.dao.po.audit.IcpMainHistory;
import com.ncs.opts.common.icp.dao.po.audit.IcpModifyHistory;
import com.ncs.opts.common.icp.dao.po.audit.IcpSiteAccessHistory;
import com.ncs.opts.common.i ......
总结一:
Java IO的一般使用原则:
一、按数据来源(去向)分类:
1、是文件: FileInputStream, FileOutputStream, FileReader, FileWriter
2、是byte[]:ByteArrayInputStream, ByteArrayOutputStream
3、是Char[]: CharArrayReader, CharArrayWriter
4、是String: StringBufferInputStream, StringReader, StringW ......
Java™ 本机接口(Java Native Interface,JNI)是一个标准的 Java API,它支持将 Java 代码与使用其他编程语言编写的代码相集成。如果您希望利用已有的代码资源,那么可以使用 JNI 作为您工具包中的关键组件 —— 比如在面向服务架构(SOA)和基于云的系统中。但是,如果在使用时未注意某些事项,则 ......