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进行单体测试,两种方法的输出结果是一样的:

a6368d5cb79cbeabd63a272fa8da054e.png

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进行单体测试,输出的结果与之前相同:

b2162cbc28b158e08d6bbb3c6366f30b.png

demo()运行效果

需要注意的是,通过forin语句遍历和通过迭代器遍历是完全等价的。另外,在使用Eclipse进行编程的时候,可以使用alt+/进行快捷输入生成下标遍历的for循环语句或forin语句,十分方便。

下面讲一个关于数组内存的问题,在上面的代码中再添加一段:

System.out.println(


本文来自互联网用户投稿,文章观点仅代表作者本人,不代表本站立场,不承担相关法律责任。如若转载,请注明出处。 如若内容造成侵权/违法违规/事实不符,请点击【内容举报】进行投诉反馈!

相关文章

立即
投稿

微信公众账号

微信扫一扫加关注

返回
顶部