Set的基本介紹是什么

這篇文章將為大家詳細講解有關(guān)Set的基本介紹是什么,文章內(nèi)容質(zhì)量較高,因此小編分享給大家做個參考,希望大家閱讀完這篇文章后對相關(guān)知識有一定的了解。

創(chuàng)新互聯(lián)公司是一家以網(wǎng)站建設(shè)公司、網(wǎng)頁設(shè)計、品牌設(shè)計、軟件運維、成都網(wǎng)站營銷、小程序App開發(fā)等移動開發(fā)為一體互聯(lián)網(wǎng)公司。已累計為成都資質(zhì)代辦等眾行業(yè)中小客戶提供優(yōu)質(zhì)的互聯(lián)網(wǎng)建站和軟件開發(fā)服務。

Set的架構(gòu)

Set的基本介紹是什么

  • Set是一個繼承于Collection的接口,它是一個不允許重復元素的集合。

  • AbstractSet是一個抽象類,繼承了AbstractCollection,AbstractCollection實現(xiàn)了Set中的絕大部分函數(shù),為Set的實現(xiàn)類提供了便利。

  • Set的實現(xiàn)類主要是HashSet、LinkedHashSet、TreeSet。

HashSet

  • 底層通過HashMap實現(xiàn)

  • 不保證元素的任何順序

  • 非線程安全,元素可為null

LinkedHashSet

  • 底層通過LinkedHashMap實現(xiàn)

  • 保證元素的插入順序

  • 非線程安全,元素不可為null

TreeSet

  • 底層通過TreeMap實現(xiàn)

  • 使用元素的自然順序?qū)υ剡M行排序

  • 非線程安全,元素不可為null

Set源碼解析
public interface Set<E> extends Collection<E> {

    /** 返回集合中元素的數(shù)量 **/
    int size();

    /** 返回當前集合是否為空 **/
    boolean isEmpty();

    /** 返回一個包含當前集合中所有元素的Object數(shù)組 **/
    Object[] toArray();

    /** 返回一個包含當前集合中所有元素的指定類型T數(shù)組 **/
    <T> T[] toArray(T[] a);

    /** 返回當前集合是否包含元素o **/
    boolean contains(Object o);

    /** 返回當前集合是否包含指定集合c中的所有元素 **/
    boolean containsAll(Collection<?> c);

    /** 往當前集合中添加元素e **/
    boolean add(E e);

    /** 添加指定集合c中的所有元素到當前集合 **/
    boolean addAll(Collection<? extends E> c);

    /** 從當前集合中移除指定元素e,如果集合中包含多個相同元素,則移除第一個 **/
    boolean remove(Object o);

    /** 從當前集合中移除指定集合c中包含的所有元素 **/
    boolean removeAll(Collection<?> c);

    /** 只保留當前集合與指定集合c中都存在的元素 **/
    boolean retainAll(Collection<?> c);

    /** 移除當前集合中所有的元素 **/
    void clear();

    /** 返回當前集合的迭代器 **/
    Iterator<E> iterator();

    /** 返回一個可分割迭代器,增加并行處理能力;繼承自Iterable接口;JDK1.8新增的方法 **/
    default Spliterator<E> spliterator() {
        return Spliterators.spliterator(this, Spliterator.DISTINCT);
    }
}

關(guān)于Set的基本介紹是什么就分享到這里了,希望以上內(nèi)容可以對大家有一定的幫助,可以學到更多知識。如果覺得文章不錯,可以把它分享出去讓更多的人看到。

分享標題:Set的基本介紹是什么
網(wǎng)頁網(wǎng)址:http://www.muchs.cn/article22/geeejc.html

成都網(wǎng)站建設(shè)公司_創(chuàng)新互聯(lián),為您提供網(wǎng)頁設(shè)計公司、、做網(wǎng)站、微信小程序、手機網(wǎng)站建設(shè)品牌網(wǎng)站建設(shè)

廣告

聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以用戶投稿、用戶轉(zhuǎn)載內(nèi)容為主,如果涉及侵權(quán)請盡快告知,我們將會在第一時間刪除。文章觀點不代表本網(wǎng)站立場,如需處理請聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內(nèi)容未經(jīng)允許不得轉(zhuǎn)載,或轉(zhuǎn)載時需注明來源: 創(chuàng)新互聯(lián)

h5響應式網(wǎng)站建設(shè)