首页 > 代码库 > 【JAVA】for,foreach遍历数组时候一些区别
【JAVA】for,foreach遍历数组时候一些区别
public class ArrayTest { static public void incr(int a[]) { for (Integer i : a) { i += 1; } } static public void incr1(int a[]) { for (int i = 0, len = a.length; i < len; i++) { // a[i] = a[i] + 1; a[i]++; } } static public void main(String args[]) { int a[] = { 1, 2, 3, 4, 5 }; for (int i : a) System.out.print(i + " "); System.out.println("\nforeach result:"); incr(a); for (int i : a) System.out.print(i + " "); System.out.println("\n"); int b[] = { 1, 2, 3, 4, 5 }; for (int i : b) System.out.print(i + " "); System.out.println("\nfor loop result:"); incr1(b); for (int i : b) System.out.print(i + " "); } }
output:
1 2 3 4 5
foreach result:
1 2 3 4 5
1 2 3 4 5
for loop result:
2 3 4 5 6
foreach遍历的时候,相当于将数组中的值赋给相应的变量,所以对于 int array foreach循环,内部的修改不会影响原数组的值。
声明:以上内容来自用户投稿及互联网公开渠道收集整理发布,本网站不拥有所有权,未作人工编辑处理,也不承担相关法律责任,若内容有误或涉及侵权可进行投诉: 投诉/举报 工作人员会在5个工作日内联系你,一经查实,本站将立刻删除涉嫌侵权内容。