Heim  >  Artikel  >  Java  >  Detailliertes Beispiel für die Methode „enthält“ in ArrayList

Detailliertes Beispiel für die Methode „enthält“ in ArrayList

王林
王林nach vorne
2020-08-24 15:57:464709Durchsuche

Detailliertes Beispiel für die Methode „enthält“ in ArrayList

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!

Stellungnahme:
Dieser Artikel ist reproduziert unter:csdn.net. Bei Verstößen wenden Sie sich bitte an admin@php.cn löschen