for-each是用于遍历数组的另一种形式的for循环。for-each循环显着减少了代码,并且循环中没有使用索引或计数器。
句法:
For(<数组/列表的数据类型> <临时变量名称>:<要迭代的数组/列表>){
System.out.println();
//使用此temp变量可以执行任何其他操作。
}
String [] arrData = {“ Alpha”,“ Beta”,“ Gamma”,“ Delta”,“ Sigma”};
尽管您可能知道一些方法,例如查找数组的大小,然后使用传统的for循环(计数器,条件和增量)遍历数组的每个元素,但我们需要找到一种更优化的方法,该方法将不使用任何此类计数器。
class UsingForEach { public static void main(String[] args) { String[] arrData = {"Alpha", "Beta", "Gamma", "Delta", "Sigma"}; //The conventional approach of using the for loop System.out.println("Using conventional For Loop:"); for(int i=0; i< arrData.length; i++){ System.out.println(arrData[i]); } System.out.println("\nUsing Foreach loop:"); //The optimized method of using the for loop - also called the foreach loop for (String strTemp : arrData){ System.out.println(strTemp); } } }
Java 集合框架概述
一方面, 面向对象语言对事物的体现都是以对象的形式,为了方便对多个对象
的操作,就要对对象进行存储。另一方面,使用Array存储对象方面具有一些弊
端,而Java 集合就像一种容器,可以动态地把多个对象的引用放入容器中。
数组在内存存储方面的特点:
数组初始化以后,长度就确定了。
数组声明的类型,就决定了进行元素初始化时的类型
数组在存储数据方面的弊端:
数组初始化以后,长度就不可变了,不便于扩展
数组中提供的属性和方法少,不便于进行添加、删除、插入等操作, 且效率不高。
同时无法直接获取存储元素的个数
数组存储的数据是有序的、可以重复的。 ---->存储数据的特点单一
Java 集合类可以用于存储数量不等的多个对象,还可用于保存具有映射关系的
关联数组。