大數據第十八天

1.List接口相對於Collection特有的方法,經常使用的有哪些?數組

  • void add(int index,Object element):將制定元素element插入到集合中的指定的index處
  • boolean addAll(int index,Collection c):將集合c所包含的元素插入到指定的index處
  • Object get(int index):返回集合index處的元素
  • int indexOf(Object o):返回元素在集合中出現的第一次索引
  • Object remove(int index):刪除並返回index處的元素
  • Object set(int index,Object element):將index處的元素替換成element,返回值是被替換的元素

List subList(int fromIndex,int toIndex):返回從fromIndex(包含)開始,到toIndex(不包含)爲止的元素組成的子集合安全


2.ArrayList的contains方法實現過程如何?數據結構

contains方法是Collection中定義的抽象方法,用來判斷一個集合中是否包含指定的元素,它的方法簽名是:線程

boolean contains(Object o);索引

當集合中包含指定的元素,就返回true,不然返回false。接口


3.List的實現子類特色(ArrayList,LinkedList,vector)element

  • ArrayList:

    底層數據結構是數組,查詢快,增刪慢。rem

    線程不安全,效率高。get

  • Vector:

    底層數據結構是數組,查詢快,增刪慢。編譯器

    線程安全,效率低。

  • LinkedList:

    底層數據結構是鏈表,查詢慢,增刪快。

    線程不安全,效率高。

      

到底使用哪一個實現類,要看具體的業務需求

    要安全嗎?

       要:不用Vector(後面有替代的)

       不要:ArrayList或者LinkedList

           查詢多:ArrayList

           增刪多:LinkedList

          

若是你真的搞不清楚,那就通通用ArrayList。


4.泛型的含義?

將類型做爲一種參數,在編譯期佔位,運行期才知道具體的類型


5.什麼是菱形語法?

泛型演示:菱形語法(泛型推斷)

 

在構造方法的()前面不用寫泛型的類型了,直接給出一對<>便可,編譯器會自動推斷出括號裏應該是什麼類型

6.泛型類,泛型方法,泛型接口的定義格式

相關文章
相關標籤/搜索