मैं code-क्यों ArrayList.remove काम नहीं कर रहा
import java.util.ArrayList;
public class ArrayListExp{
public static void main (String[] args){
ArrayList<String> name = new ArrayList<String>();
name.add("Chris");
name.add("Lois");
name.add("Meg");
name.add("Meg");
name.add("Brain");
name.add("Peter");
name.add("Stewie");
System.out.println(name);
for (int i = 0; i < name.size(); i++){
String oldName = name.get(i);
if(oldName.equals("Meg"))
{
name.remove(i);
}
}
System.out.println(name);
}
}
निम्नलिखित है लेकिन यहाँ यह मेरे उत्पादन देता है -
[Chris, Lois, Meg, Meg, Brain, Peter, Stewie]
[Chris, Lois, Meg, Brain, Peter, Stewie]
मैं बिंदु नहीं मिल रहा है, क्यों इस Meg
को हटाने नहीं है, लेकिन मैंने उस मामले में केवल एक Meg
के साथ प्रयास किया है, यह काम कर रहा है। और जब मैं कुछ Meg
जोड़ रहा हूं, तो पिछले Meg
को ArrayList
से हटाया नहीं गया है। क्यूं कर?
आप एक पाश के बीच में दूर करने के लिए एक iterator उपयोग करना चाहिए। यह अक्सर कवर किया जाता है। http://stackoverflow.com/questions/13847695/java-delete-arraylist-iterator – zero298
मैंने इस शाम को कम से कम 2 बार इस स्निपेट को देखा है। यदि आप पिछले कुछ घंटों के जावा सबमिशन को देखते हैं तो आपको बहुत सारी सहायक टिप्पणियां मिलेंगी जो आपके सटीक मामले की सहायता करेंगी। –
"मस्तिष्क"। ._______। – Boann