1、java语言支持四种类型:
(1)接口(interface):
(2)类(class):
(3)数组(Array):
(4)基本类型(primitive):唯一非引用类型(reference type)
2、方法签名:包括方法名称、参数,不包括返回值;
《《《《《《《《《《《《《《《《《《《《《《《《《《《《《《《《《《《《《《《《《《《《《《《
1、foreach循环
for (T rf : list) {
Map map=ObjectUtil.getFieldMap(rf);
datalist.add(map);
}
(1)迭代器和索引变量容易引起混乱;一旦出错,编译器不一定能发现;
(2)foreach避免出现混乱;
(3)foreach没有性能损失,数组也一样;
(4)相比于普通for循环,有性能优势,因为对数组边界值仅计算一次;
(5)两个集合嵌套式迭代,foreach优势更明显:
(6)for循环嵌套必须在外层嵌套取出i.next():

(6.1)错误 for循环嵌套:

(7)foreach 嵌套则不必:

(8)可以遍历集合、数组,实现了Iterator接口的对象;
(9)Iterator接口与foreach同时引入java平台:

(10)一组元素,可以不实现Collection接口,请实现Iterator接口,这样可以使用foreach;
2、无法使用foreach情况
(1)过滤:在遍历集合,并删除指定元素时;请显式使用迭代器,调用它的remove方法;
(2)转换:在遍历列表或集合,并取代部分元素值,需要列表迭代器、数组索引,设定元素值;
(3)平行迭代:在并行遍历多个集合,此时使用嵌套for循环,如(6.1);
3、迭代器Iterator
(1)for循环需要事先知道集合的内部结构,访问代码和集合紧密耦合;
(2)Iterator可以将其分离;
4、迭代器(Iterator)与枚举(Enumeration)有两点不同:
迭代器取代了 Java Collections Framework 中的 Enumeration;
(1)在迭代期间从迭代器所指向的 collection 移除元素;
(2)方法名称得到了改进,只需使用 next()、hasNext() 两个方法即可完成迭代;
本文探讨了Java中四种类型的使用,包括接口、类、数组和基本类型。重点讲述了foreach循环的优势,如减少混乱、无性能损失以及在处理集合时的便利性。同时,对比了foreach与迭代器的区别,指出在需要删除元素或转换元素时,应当使用迭代器。文章还提到了枚举在Java Collections Framework中的迭代功能已被迭代器取代。
1745

被折叠的 条评论
为什么被折叠?



