首頁 Java Java入門 實例詳解ArrayList中的contains方法

實例詳解ArrayList中的contains方法

Aug 24, 2020 pm 03:57 PM
arraylist contains

實例詳解ArrayList中的contains方法

ArrayList中的contains方法用於判斷在ArrayList中是否包含目標元素。

(推薦教學:java入門教學

原則:

呼叫indexOf(Object o)方法

public boolean contains(Object o) {
    return indexOf(o) >= 0;
}
登入後複製

indexOf( Object o)方法中呼叫傳入Object物件的equals方法進行比較

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;
}
登入後複製

用法:

既然已經清楚了原理, 接下來要做的就是看一下常用類別的equals方法

(學習影片推薦:java課程

String類別

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;
}
登入後複製

所以說, 如果ArrayList集合中的元素類型是String, 直接使用contains方法是沒問題的

Integer類別

其他包裝類型同它基本上相同,都是比較的值, 因此也可以直接使用contains方法

public boolean equals(Object obj) {
    if (obj instanceof Integer) {
        return value == ((Integer)obj).intValue();
    }
    return false;
}
登入後複製

其他引用類型

相信不說大家也知道了, 使用其他引用型別需要用到contains方法時,要重寫equals方法呦!

以上是實例詳解ArrayList中的contains方法的詳細內容。更多資訊請關注PHP中文網其他相關文章!

本網站聲明
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn

熱AI工具

Undresser.AI Undress

Undresser.AI Undress

人工智慧驅動的應用程序,用於創建逼真的裸體照片

AI Clothes Remover

AI Clothes Remover

用於從照片中去除衣服的線上人工智慧工具。

Undress AI Tool

Undress AI Tool

免費脫衣圖片

Clothoff.io

Clothoff.io

AI脫衣器

Video Face Swap

Video Face Swap

使用我們完全免費的人工智慧換臉工具,輕鬆在任何影片中換臉!

熱工具

記事本++7.3.1

記事本++7.3.1

好用且免費的程式碼編輯器

SublimeText3漢化版

SublimeText3漢化版

中文版,非常好用

禪工作室 13.0.1

禪工作室 13.0.1

強大的PHP整合開發環境

Dreamweaver CS6

Dreamweaver CS6

視覺化網頁開發工具

SublimeText3 Mac版

SublimeText3 Mac版

神級程式碼編輯軟體(SublimeText3)

Java ArrayList遍歷時使用foreach和iterator刪除元素的差異是什麼? Java ArrayList遍歷時使用foreach和iterator刪除元素的差異是什麼? Apr 27, 2023 pm 03:40 PM

一、Iterator和foreach的區別多態差異(foreach底層就是Iterator)Iterator是一個介面類型,他不關心集合或數組的類型;for和foreach都需要先知道集合的類型,甚至是集合內元素的類型; 1.為啥說foreach底層就是Iterator寫的程式碼:反編譯程式碼:二、foreach與iterator時remove的差別先來看阿里java開發手冊但1的時候不會報錯,2的時候就會報錯(java. util.ConcurrentModificationException)首

如何在Java中檢查ArrayList是否包含某個元素? 如何在Java中檢查ArrayList是否包含某個元素? Sep 03, 2023 pm 04:09 PM

您可以利用List介面的contains()方法來檢查清單中是否存在物件。 contains()方法booleancontains(Objecto)如果此清單包含指定的元素,則傳回true。更正式地說,如果且僅當此列表包含至少一個元素e,使得(o==null?e==null:o.equals(e)),則傳回true。參數c-要測試其在此列表中是否存在的元素。傳回值如果此清單包含指定的元素,則傳回true。拋出ClassCastException-如果指定元素的類型與此清單不相容(可選)。 NullP

使用java的ArrayList.remove()函數移除ArrayList中的元素 使用java的ArrayList.remove()函數移除ArrayList中的元素 Jul 24, 2023 pm 01:21 PM

使用java的ArrayList.remove()函數移除ArrayList中的元素在Java中,ArrayList是一種常用的集合類,用於儲存和操作一組元素。 ArrayList類別提供了許多方法來增刪改查集合中的元素。其中一個使用頻率較高的方法是remove(),它可以移除ArrayList中的元素。 ArrayList的remove()方法有兩種重載形式,一

Java中ArrayList初始化容量大小為10的原因是什麼 Java中ArrayList初始化容量大小為10的原因是什麼 May 10, 2023 pm 02:19 PM

為什麼HashMap的初始化容量為16?在聊ArrayList的初始化容量時,要先來回顧HashMap的初始化容量。這裡以Java8源碼為例,HashMap中的相關因素有兩個:初始化容量及裝載因子:/***Thedefaultinitialcapacity-MUSTbeapoweroftwo.*/staticfinalintDEFAULT_INITIAL_CAPACITY=1>1);if(newCapacity-minCapacity0)newCapacityhuge

使用java的ArrayList.clear()函數清空ArrayList中的元素 使用java的ArrayList.clear()函數清空ArrayList中的元素 Jul 24, 2023 pm 02:04 PM

使用Java的ArrayList.clear()函數清空ArrayList中的元素在Java程式設計中,ArrayList是一種非常常用的資料結構,它可以動態地儲存和存取元素。然而,在某些情況下,我們可能需要清空ArrayList中的所有元素,以便重新使用或釋放記憶體。這時,就可以使用ArrayList的clear()函數來實作。 ArrayList.clear()

Java使用ArrayList類別的contains()函數來判斷元素是否存在 Java使用ArrayList類別的contains()函數來判斷元素是否存在 Jul 24, 2023 pm 07:33 PM

Java使用ArrayList類別的contains()函數來判斷元素是否存在在Java程式設計中,ArrayList是一個非常常用的資料結構。它提供了一種靈活的方法來儲存和操作一組資料。除了簡單的新增、刪除和存取元素之外,ArrayList還提供了一些有用的方法,例如contains()函數,用於判斷元素是否存在於ArrayList中。 contains()函數是A

在Java中從ArrayList取得唯一值 在Java中從ArrayList取得唯一值 Sep 04, 2023 am 08:41 AM

ArrayList 是實作 List 介面的 Java Collection Framework 類別。它是順序儲存和存取每個元素的線性結構。它允許儲存重複元素,但有幾種方法可能有助於從 ArrayList 取得唯一值。

使用ArrayList類別的removeAll()方法從Java中的陣列列表中移除指定的元素 使用ArrayList類別的removeAll()方法從Java中的陣列列表中移除指定的元素 Jul 24, 2023 pm 07:16 PM

使用ArrayList類別的removeAll()方法從Java中的陣列清單中移除指定的元素在Java中,ArrayList是一個非常常用的資料結構,用於儲存和操作一組物件。有時我們需要從ArrayList中移除特定的元素。 ArrayList類別提供了removeAll()方法,可以幫助我們實現這項需求。 removeAll()方法的作用是移除ArrayList中

See all articles