Wenn Sie möchten, dass die Elemente in der Sammlung wiederholt werden, wird empfohlen, Hashset wie folgt zu verwenden:
// Liste ist eine ArrayList mit wiederholten Elementen. Hashset Hset = new Hashset (Liste); list.clear (); list.addall (hset);
Aber manchmal möchten wir ein Element mit einem doppelten Attributwert (der gleiche Wert) löschen, wie folgt:
Netzwerk nw1 = neues network (); nw1.id = 1; nw1.destip = "192.168.1.3"; Netzwerk nw2 = neues network (); nw2.id = 2; nw2.destip = "192.168.1.5"; netor nw3 = new network (); nw3.id = 3; 3; 3; 3; 3; 3; 3; 3; 3; 3; 3; 3; 3; 3; 3; 3; 3; 3; Network (); nw4.id = 4; nw4.destip = "192.168.1.4"; Netzwerk NW5 = neues Netzwerk (); NW5.id = 5; NW5.Destip = "192.168.1.3"; Mlist.add (NW1); Mlist.Add (NW2); Mlist.Add (NW3); Mlist.Add (NW4);
Offensichtlich sind die IP -Werte in NW1, NW3 und NW5 gleich. Wir brauchen nur eine. Wie können wir also die eigenen Elementwerte mit ArrayList durchgehen und löschen?
für (int i = 0; i <mlist.size ()-1; i ++) {für (int j = mlist.size ()-1; j> i; j-) {if (mlist.get (j) .destip.equals (mlist.get (i) .Destip)) {mlist.remove (j)}}}}}}}}}}}}}}}}}}}}}}}}}}}}} {if (mlist.get.get.g.Die beiden für Schleifen sind genug. Denken Sie daran, sie einzeln aus dem Schwanz zu vergleichen. Sobald ein bestimmtes Elementsymbol gelöscht werden muss, muss sichergestellt werden, dass der oberhalb des Schwanzes gelöscht und die Schleife nicht verwirrt wird.
Das obige ist der vollständige Inhalt der ArrayList -Methode (empfohlen), den der Editor Ihnen mitbringt. Ich hoffe, es wird Ihnen hilfreich sein und wulin.com mehr ~ unterstützen ~