增强for循环和普通for循环区别
1,增强for循环与普通for循环的区别:
增强for循环必须有被遍历的目标(如集合或数组)。
普通for循环遍历数组的时候需要索引。
增强for循环不能获取下标,所以遍历数组时最好使用普通for循环。
2,特点:
书写简洁。
对集合进行遍历,只能获取集合元素,不能对集合进行操作,类似迭代器的简写形式,但是迭代器可以对元素进行remove操作(ListIterator可以进行增删改查的操作)。
3,书写格式:
for(数据类型变量名 : 被遍历的集合(collection)或者数组) {
执行语句
}
4,增强for循环使用示例:
import java.util.ArrayList;
import java.util.Iterator;
import java.util.List;
public class ForTest {
public static void main(String[] args) {
// TODO Auto-generated method stub
/* 1.普通数组中的使用 */
int array[] = { 1,2,3,4,5,6,7,8,9};
// 增强的for循环
for (int item : array) {
System.out.println(item);
}
// 普通for循环
for (int i = 0; i < array.length; i++)
System.out.println(array[i]);
/* 2.二维数组中的使用 */
int array2[][] = {{1,2,3}, {4,5,6}, {7,8,9} };
// 增强的for循环
for (int arr[] : array2) {
for (int item : arr) {
System.out.println(item);
}
}
// 普通for循环
for (int i = 0; i < array2.length; i++) {
for (int j = 0; j < array2[i].length; j++) {
System.out.println(array2[i][j]);
}
}
/* 3.List中的使用 */
List<String> list = new ArrayList<String>();
list.add("我");
list.add("要");
list.add("成");
list.add("大");
list.add("牛");
// 增强的for循环
for (String item : list){
System.out.println(item);
}
//普通for循环
for (int i = 0; i < list.size(); i++) {
System.out.println(list.get(i));
}
//迭代器遍历
Iterator<String> it = list.iterator();
while (it.hasNext()) {
System.out.println(it.next());
}
}
}