【发布时间】:2010-12-21 20:11:45
【问题描述】:
好的,所以我很想遍历一个 ArrayList 并删除一个特定的元素。但是,我在使用类似 For-Each 的结构时遇到了一些麻烦。当我运行以下代码时:
ArrayList<String> arr = new ArrayList<String>();
//... fill with some values (doesn't really matter)
for(String t : arr)
{
t = " some other value "; //hoping this would change the actual array
}
for(String t : arr)
{
System.out.println(t); //however, I still get the same array here
}
我的问题是,如何使 't' 成为指向 'arr' 的指针,以便能够更改 for-each 循环中的值?我知道我可以使用不同的结构循环遍历 ArrayList,但是这个结构看起来非常干净易读,如果能够将 't' 设为指针就好了。
感谢所有 cmets!即使你说我应该接受它并使用不同的构造。
【问题讨论】:
-
这与 foreach 循环无关,这是对 java 工作原理的更基本的误解
-
即使 ArrayList 由 Array 支持:ArrayList != Array.不要混淆术语(例如在您的 cmets 中)
标签: java pointers foreach arraylist