我想详细了解增强型 For 循环在 Java 中是如何工作的(假设我确实了解了这个循环的基本用法以及它一般是如何工作的)。
给定以下代码:
String[] a = {"dog", "cat", "turtle"};
for (String s : a) {
out.println("String: " + s);
s = in.readLine("New String? ");
}
它实际上并没有修改原始列表“a”。为什么不?内存管理如何工作?'s' 不是对'a[i]' 的同一个内存单元的引用吗?
我在 oracle 文档中阅读了增强的 for 循环不能用于从原始数组中删除元素,这是有道理的。修改值是否相同?
提前致谢