Die Methode „enthält“ in ArrayList wird verwendet, um zu bestimmen, ob das Zielelement in der ArrayList enthalten ist.
(Empfohlenes Tutorial: Java-Einführungs-Tutorial)
Prinzip:
Rufen Sie die Methode indexOf(Object o) auf
public boolean contains(Object o) { return indexOf(o) >= 0; }
Rufen Sie in der Methode indexOf(Object o) die Methode equal des eingehenden Object-Objekts zum Vergleich auf
public int indexOf(Object o) { // 传入的Object是null, 则在集合中寻找为null的元素 if (o == null) { for (int i = 0; i < size; i++) if (elementData[i]==null) return i; } else { // 如果不为null, 调用equals方法比较 for (int i = 0; i < size; i++) if (o.equals(elementData[i])) return i; } // 不满足条件, 返回-1 return -1; }
Verwendung:
Da das Prinzip nun klar ist, werfen wir als nächstes einen Blick auf die Gleichheitsmethode häufig verwendeter Klassen
(Empfehlung für Lernvideos: Java-Kurs)
String-Klasse
public boolean equals(Object anObject) { // 如果两个对象内存地址相同, 返回true if (this == anObject) { return true; } // 判断传入Object是String的情况 if (anObject instanceof String) { String anotherString = (String)anObject; int n = value.length; if (n == anotherString.value.length) { char v1[] = value; char v2[] = anotherString.value; int i = 0; // 比较String转化的char[]中的每一个char元素 // 如果有一个不想等,则返回false while (n-- != 0) { if (v1[i] != v2[i]) return false; i++; } return true; } } return false; }
Wenn also der Elementtyp in der ArrayList-Sammlung String ist, ist es kein Problem, die Methode „contains“ direkt zu verwenden
Integer-Klasse
Andere Verpackungstypen sind im Grunde die gleichen, es handelt sich bei allen um Vergleichswerte, sodass Sie dies auch tun können Verwenden Sie die Methode „Contains“ direkt.
Das obige ist der detaillierte Inhalt vonDetailliertes Beispiel für die Methode „enthält' in ArrayList. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!