Heim >Java >javaLernprogramm >So verwenden Sie list.contains() in Java
enthält() in der Listensammlung wird verwendet, um zu bestimmen, ob die -Sammlung das angegebene Element enthält. Die Liste vergleicht die Elemente in den Klammern nacheinander mit den in der Liste vorhandenen Elementen. Wenn es gleiche Elemente gibt, ist das Rückgabeergebnis wahr, wenn nicht, ist das Rückgabeergebnis falsch.
Verwenden Sie den folgenden Code zur Überprüfung:
public static void main(String[] args) { List newList = new ArrayList();//创建一个空数组 newList.add("name"); newList.add("age"); newList.add("sex"); newList.add("birth");//往数组中加一些元素 boolean res = false; if(newList.contains("birthday")){ res=true; log.info("包含,返回"+res); }else { log.info("不包含,返回"+res); } }
Testen Sie, ob das newList-Array das Element „birthday“ enthält.
Testen Sie, ob das newList-Array das Element „birth“ enthält 3. Erweiterung
Die Methode „contains()“ in der String-Klasse: Genau dann, wenn dieser String die angegebene Zeichenwertsequenz enthält, wird ermittelt, ob der angegebene Inhalt den Inhalt in Klammern enthält
.public static void main(String[] args) { String str="CSDN程序媛"; boolean res = false; if(str.contains("程序媛")){ res=true; log.info("包含程序媛,返回"+res); }else { log.info("不包含程序媛,返回"+res); }
Testen Sie, ob der String-Typ „CSDN Program Yuan“ „Program Yuan“ enthält
Wenn der String-Typ String Buchstaben enthält, müssen Sie darauf achten
Es wird zwischen Groß- und Kleinschreibung unterschiedenTesten Sie den String Typ“ „CSDN Program Yu“ enthältKleinbuchstaben „csdn“
Ergänzung: Die List.contains()-Methode in Java vergleicht Adressen anstelle von Werten
Verwenden Sie die List.contains(Object object)
Methode, um Bestimmen Sie, ob die ArrayList ein Elementobjekt enthält (für den Fall, dass der Attributwert des Objekts gleich ist, die Objektadresse jedoch unterschiedlich ist). Wenn die Methode equal im Elementobjekt Object of List@Override public boolean equals(Object o) { // TODO Auto-generated method stub return super.equals(o); }will Bewirkt, dass die Methode „enthält“ immer „false“ zurückgibt. Sehen Sie sich den Quellcode der Methode „enthüllt“ von ArrayList wie folgt an:
/** * Searches this {@code ArrayList} for the specified object. * * @param object * the object to search for. * @return {@code true} if {@code object} is an element of this * {@code ArrayList}, {@code false} otherwise */ @Override public boolean contains(Object object) { Object[] a = array; int s = size; if (object != null) { for (int i = 0; i < s; i++) { if (object.equals(a[i])) { return true; } } } else { for (int i = 0; i < s; i++) { if (a[i] == null) { return true; } } } return false; }Es ist ersichtlich, dass die Methode „enthält“ basierend auf der Methode „equals“ von Object bestimmt, ob ein bestimmtes Element enthalten ist. Sehen Sie sich weiterhin die Methode „equals“ im Objekt an Der Quellcode lautet wie folgt:
rrree
Verwenden Sie also „==", um die Adressen von Objekten zu vergleichen, d. h. wenn die Adressen gleich sind, wird „true" zurückgegeben Bei Objekten mit demselben Objektattributwert, aber unterschiedlichen Adressen wird immer false zurückgegeben! Wenn Sie anhand der Gleichheit der Objektattributwerte feststellen müssen, ob die ArrayList ein Objekt enthält, müssen Sie die Gleichheitsmethode von Object überschreiben und jeden Attributwert des Objekts einzeln in der Gleichheitsmethode vergleichen , wie zum Beispiel:public boolean equals(Object o) { return this == o; }
Das obige ist der detaillierte Inhalt vonSo verwenden Sie list.contains() in Java. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!