Sie sollten eine Klasse erstellen, die diese Daten für Auto enthält. Nehmen Sie den folgenden Code als Beispiel. Ich habe Java 8
Feature verwendet, die intern über die Liste iterieren.
public class Main {
public static void main(String[] args){
List<Car> list = new ArrayList<>(Arrays.asList(new Car("Nissan", "Black", "KL1", "4"),
new Car("Ford", "Red", "LL0", "4")));
String id = "KL1";
list.removeIf(i -> i.getID().equals(id));
list.forEach(System.out::println); // show the list after operation
}
static class Car {
public final String Brand;
public final String Colour;
public final String ID;
public final String Door;
public Car(String brand, String colour, String ID, String door) {
Brand = brand;
Colour = colour;
this.ID = ID;
Door = door;
}
public String getBrand() {
return Brand;
}
public String getColour() {
return Colour;
}
public String getID() {
return ID;
}
public String getDoor() {
return Door;
}
}
}
aktualisieren
Sie auch tun können, dass diese
public static void main(String[] args){
List<Car> list = new ArrayList<>(Arrays.asList(new Car("Nissan", "Black", "KL1", "4"),
new Car("Ford", "Red", "LL0", "4")));
String id = "KL1";
// Following code will find and remove the match from the list.
// this for loop do exactly what it is doing "list.removeIf(i -> i.getID().equals(id));"
for (int i = 0; i < list.size(); i++) {
if (list.get(i).getID().equals(id)) {
list.remove(i);
break;
}
}
}
Foremost, indem Sie: Warum ist dies ein '' Arraylist anstelle eines '' Arraylist ? Diese Daten sollten eine Klasse mit den Eigenschaften '{String-Marke, String-Farbe, String-ID, int doorCount}' oder etwas sein, mit einer 'toString()' -Methode, die den angezeigten Text generiert. Es sollte keine einzelne Zeichenkette sein, während Sie mit den Daten arbeiten ... das Entfernen von 'id' wird auf diese Weise auch fast trivialer. –