国产xxxx99真实实拍_久久不雅视频_高清韩国a级特黄毛片_嗯老师别我我受不了了小说

資訊專欄INFORMATION COLUMN

集合類List 的接口定義

darkbug / 1200人閱讀

摘要:迭代器,主要提供迭代器,并行迭代器還有就是定義所有的集合類支持方法。集合和的區(qū)別只能返回并且不能強制進行轉(zhuǎn)換會報錯不會有該問題方法結(jié)果取并集接口看一下這個接口相比較都多了哪些方法排序方法方法方法

集合類

目標(biāo):
先看一下在JAVA中都包含了哪些集合類?
首先我們看一下 List 相關(guān)的一些類,并搞清楚他們究竟有哪些實現(xiàn)類,并且這些實現(xiàn)類的使用場景都是什么。

類圖

這個是類圖,我們看到所有的集合類都是實現(xiàn)了

Iterable

Collection

List

我們先看一下他們都實現(xiàn)了哪些方法,并探究他們實現(xiàn)的方式是什么。

Iterable

迭代器,主要提供迭代器,并行迭代器(Spliterator) 還有就是定義所有的集合類支持 forEach 方法。像forEach 和 并行迭代器 這些都是在jdk8 中新出的東西。以后專門學(xué)習(xí)一下 jdk8 中的新東西。

Collection 集合 toArray() 和 T[] toArray(T[] a) 的區(qū)別

toArray() 只能返回Object[] 并且不能強制進行轉(zhuǎn)換 (String[]) strings.toArray(). 會報錯

toArray(T[] a) 不會有該問題

containsAll 方法
    @Test
    public void testContainsAll() {
        List lists = new ArrayList<>();
        lists.add("1");
        lists.add("2");
        lists.add("3");

        System.out.println("============>" + lists.contains("1"));

        List lists1 = new ArrayList<>();

        System.out.println("============>" + lists.containsAll(lists1));

        lists1.add("1");

        System.out.println("============>" + lists.containsAll(lists1));

        lists1.add("4");

        System.out.println("============>" + lists.containsAll(lists1));
    }

=========結(jié)果=========
============>true
============>true
============>true
============>false
retainAll 取并集
    @Test
    public void testRetainAll() {
        List lists = new ArrayList<>();
        lists.add("1");
        lists.add("2");
        lists.add("3");
        lists.retainAll(new ArrayList<>());
        System.out.println("============>" + lists);


        lists.add("1");
        lists.add("2");
        lists.add("3");

        List lists1 = new ArrayList<>();
        lists1.add("1");
        lists1.add("a");
        lists.retainAll(lists1);
        System.out.println("============>" + lists);
    }
-------------------
============>[]
============>[1]
List 接口

看一下這個接口相比較Collection都多了哪些方法?

sort 排序方法
    default void sort(Comparator c) {
        Object[] a = this.toArray();
        Arrays.sort(a, (Comparator) c);
        ListIterator i = this.listIterator();
        for (Object e : a) {
            i.next();
            i.set((E) e);
        }
    }
add get set 方法 subList 方法

文章版權(quán)歸作者所有,未經(jīng)允許請勿轉(zhuǎn)載,若此文章存在違規(guī)行為,您可以聯(lián)系管理員刪除。

轉(zhuǎn)載請注明本文地址:http://m.specialneedsforspecialkids.com/yun/73611.html

相關(guān)文章

  • Java 泛型

    摘要:唯一的例外是,它是所有引用類型的實例另一方面,程序可以調(diào)用方法來返回集合指定索引處的元素,其返回值是一個未知類型,但可以肯定的是,它總是一個。 泛型入門 編譯時不檢查類型的異常 public class ListErr { public static void main(String[] args) { // 創(chuàng)建一個只想保存字符串的List集合 ...

    Zachary 評論0 收藏0
  • Java013-集合

    摘要:集合框架重點理解用于存儲數(shù)據(jù)的容器。集合容器在不斷向上抽取過程中。出現(xiàn)了集合體系。,刪除將集合中的元素全刪除,清空集合。刪除集合中指定的對象。注意刪除成功,集合的長度會改變。作用用于取集合中的元素。是集合特有的迭代器。是單列集合是雙列集合 集合框架(重點理解):用于存儲數(shù)據(jù)的容器。特點:1:對象封裝數(shù)據(jù),對象多了也需要存儲。集合用于存儲對象。2:對象的個數(shù)確定可以使用數(shù)組,但是不確定怎...

    qpal 評論0 收藏0
  • 1、Map接口 2、模擬斗地主洗牌發(fā)牌

    摘要:中的集合稱為單列集合,中的集合稱為雙列集合。洗牌通過數(shù)字完成洗牌發(fā)牌發(fā)牌將每個人以及底牌設(shè)計為將最后張牌直接存放于底牌,剩余牌通過對取模依次發(fā)牌。存放的過程中要求數(shù)字大小與斗地主規(guī)則的大小對應(yīng)。 01Map集合概述 A:Map集合概述: 我們通過查看Map接口描述,發(fā)現(xiàn)Map接口下的集合與Collection接口下的集合,它們存儲數(shù)據(jù)的形式不同 ? a:Collection中的集...

    付倫 評論0 收藏0
  • 集合總結(jié)

    摘要:當(dāng)使用迭代器訪問集合元素時,中的元素不能被改變,只能通過的方法刪除上一次方法返回的集合元素才可以否則將會引發(fā)異常。可以確保集合元素處于有序狀態(tài)。返回中所有鍵值對組成的視圖,每個集合元素都是是的內(nèi)部類對象。這種集合稱為視圖。 1.集合概覽 集合包括兩大接口:Collection 和 Map。 Map TreeMap HashMap LinkedHashMap Collecti...

    yanbingyun1990 評論0 收藏0
  • java集合

    集合的作用:1,在類的內(nèi)部,對數(shù)據(jù)進行組織2,簡單而快速的搜索大數(shù)量的條目3,有的集合接口,提供了一系列排列有序的元素,并且可以在序列中間快速的插入或者刪除有關(guān)元素4,有的集合接口提供了映射的關(guān)系,可以通過關(guān)鍵字(key)去快速查找到對應(yīng)的唯一對象,而這個關(guān)鍵字可以是任意的類型 為何選擇集合而不是數(shù)組數(shù)組長度固定,集合長度可變數(shù)組只能通過下標(biāo)訪問,類型固定,而集合可以通過任意類型查找所映射的具體對...

    zxhaaa 評論0 收藏0

發(fā)表評論

0條評論

最新活動
閱讀需要支付1元查看
<