Ok, do đó, tôi buộc phải lặp qua một ArrayList và loại bỏ một phần tử specefic. Tuy nhiên, tôi đang gặp một số rắc rối khi sử dụng cấu trúc For-Each. Khi tôi chạy mã sau:Đối với mỗi và con trỏ trong Java
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
}
Câu hỏi của tôi, làm cách nào để tôi có thể thay đổi giá trị trong vòng lặp cho mỗi? Tôi biết tôi có thể lặp qua ArrayList bằng cách sử dụng một cấu trúc khác nhau, nhưng cái này trông rất sạch sẽ và dễ đọc, nó sẽ chỉ là tốt đẹp để có thể làm cho 't' một con trỏ.
Tất cả các nhận xét đều được đánh giá cao! Ngay cả khi bạn nói tôi chỉ nên hút nó lên và sử dụng một cấu trúc khác nhau.
đây không phải là về vòng lặp foreach, đây là một sự hiểu lầm cơ bản hơn về cách thức hoạt động của java – skaffman
Mặc dù ArrayList được hỗ trợ bởi một Array: ArrayList! = Array. Đừng nhầm lẫn bản thân bằng cách trộn các cụm từ (như trong nhận xét của bạn) –
http://stackoverflow.com/questions/589433/understanding-for-each-loop-in-java –