java中for in_Java中的forin语句
forin的原理
forin语句是JDK5版本的新特性,在此之前,遍历数组或集合的方法有两种:通过下标遍历和通过迭代器遍历。先举个例子:
@Test
public void demo() {
String arr[] = { "abc", "def", "opq" };
for (int i = 0; i < arr.length; i++) {//通过下标遍历数组
System.out.println(arr[i]);
}
System.out.println("----------");
List list = new ArrayList();
list.add("abc");
list.add("def");
list.add("opq");
Iterator iterator = list.iterator();
while (iterator.hasNext()) {//通过迭代器遍历集合
System.out.println(iterator.next());
}
}
用JUnit进行单体测试,两种方法的输出结果是一样的:

demo()运行效果
JDK5以后引入了forin语句,目的是为了简化迭代器遍历,其本质仍然是迭代器遍历。forin语句的写法很简单:
for(数据类型 对象名 : 数组或集合名){
...
}
这里的数据类型是数组或集合中的数据类型,接着声明一个该数据类型的对象,用于代替数组或集合中的每一个元素(因此forin语句又称为foreach语句),最后便是对该对象也就是数组或集合中元素的操作了。
修改上面的代码,用forin语句遍历刚才的数组和集合:
System.out.println("----------");
for (String s1 : arr) {
System.out.println(s1);
}
System.out.println("----------");
for (String s2 : list) {
System.out.println(s2);
}
用JUnit进行单体测试,输出的结果与之前相同:

demo()运行效果
需要注意的是,通过forin语句遍历和通过迭代器遍历是完全等价的。另外,在使用Eclipse进行编程的时候,可以使用alt+/进行快捷输入生成下标遍历的for循环语句或forin语句,十分方便。
下面讲一个关于数组内存的问题,在上面的代码中再添加一段:
System.out.println(
本文来自互联网用户投稿,文章观点仅代表作者本人,不代表本站立场,不承担相关法律责任。如若转载,请注明出处。 如若内容造成侵权/违法违规/事实不符,请点击【内容举报】进行投诉反馈!
