Ich habe viel gesucht, und überprüft die Beiträge, die als mögliche Antworten zur Verfügung gestellt wird, und keine scheint mir eine Antwort zu geben.So entfernen Sie ein Objekt in einer Array-Liste
Ich habe diese Arraylist in denen ich Online-Benutzer speichern. Ich kann aus der Benutzerliste lesen und hinzufügen. Problem ist, ich kann nicht herausfinden, wie ich es entfernen.
I
online.remove("MyUsername");
Meine Klasse versucht haben und initialiser ist wie folgt:
ArrayList<userOnline> online = new ArrayList<userOnline>();
class userOnline {
String userName;
String data1;
String data2;
String data3;
}
ich es dachte, das Objekt Zeile mit Benutzername finden würde und die Zeile, oder zumindest den Benutzernamen entfernen, aber es hat nichts entfernt und gibt mir keine Fehler.
Was kann ich tun, damit es funktioniert? Oder was kann ich als Alternative verwenden, wenn das nicht möglich ist? Ein Zeiger auf ein Dokument zur Erklärung wäre mehr als genug Hilfe!
Danke!
Schienen die Lösung war, aber das ist nicht als gute Praxis
for (int i=0; i <online.size(); i++) {
if(online.get(i).userName.equals("username")) {
online.remove(i);
}
}
Nach einer Diskussion und eine Menge Feedback scheint, wie der einzig richtige Weg für Java diese Suche zu handhaben und entfernen ist,
Sie müssen Definieren Sie equals() für die userOnline-Klasse, um das Objekt lokalisieren und entfernen zu können. –
Sie können entweder mit dem Index des Elements entfernen oder mit dem Objekt –
des Elements entfernen, aber machen 'equals()' nicht wahr für einen String – Bohemian