比如下面代码修改itr是无法影响到test_str_array的。
可以看成java compiler为我们dup了一个object出来,赋给了循环变量。
Example:
String test_str_array[] = new String[3]; test_str_array[0] = "Hello"; test_str_array[1] = "Welcome"; test_str_array[2] = "Nice to meet you"; for (String itr: test_str_array) { itr = "Super119 hacked"; } for (String itr: test_str_array) System.out.println(itr);