黑馬程序員 集合

---------------------- ASP.Net+Android+IOS開發 、 .Net培訓 期待與您交流! ----------------------

1.       對於實現了List接口的集合對象時,當併發的對同一組元素進行操作時,最好用ListIterator

2.       ArrayList的初始容量爲10,它的內部封裝了一個可變長度數組

若容量不夠則會創建一個新的數組,長度是10*15%=15

3.       Vectory的初始容量也是10,延長後會變成20

4.       contains() remove() 方法底層調用的都是equals()方法

5.       定義一個類需要往set集合中存儲的時候,爲了提高比較的效率,一般都需要覆蓋hashCode()equals()方法

6.       ArrayList刪除元素和判斷元素是否存在只依賴equals() HashSet依賴hashCode() equals()

7.       TreeSet集合可以對存儲的元素進行排序,故往TreeSet集合中存儲的元素必須具有比較性

8.       字符串排序需要比較,比較需要調用compareTo(String  s)方法

9.       二叉樹都是通過return  01 -1來比較元素是否相同

10.   泛型可以用在類上,方法上

11.   泛型中? 代表的是佔位符,沒有明確的類型,而T可以代表一個具體的類型

12.   泛型限定有2個限制:一個是上限,一個是下限

13.   泛型限定是用於泛型擴展用的

14.   ? 通配符(佔位符)

泛型的限定:

?  extends  E:可以接收E類型或者E的子類型。上限

?  super  E:可以接收E類型或者E的父類型。下限

15.   HashSetadd方法的返回值是boolean類型,而HashMapput方法的返回值是V

V代表的是第一次向Map集合中存儲的原來的那個值;

對與Map集合而言,存儲相同的Key Value對,若鍵相同,則值覆蓋

例如:System.out.println(map.put(“01”,”zhangsan01”)); //null

System.out.println(map.put(“01”,”wangwu”)); // zhangsan01

 

16.   static修飾的接口是內部接口,Entry就是Map的一個子接口

17.   Map.EntryMap中的映射關係對象,此接口包含Key Value對可以通過Map.Entry對象進行獲取

18.   Entry接口爲什麼要定義在Map接口的內部

Entry接口中定義了用來描述Map接口中的key value對的映射規則

Entry接口定義在了Map接口的內部,具體的規則由具體的子類來實現

19.   若元素存儲到哈希表中則要複寫hashCode()equals()

20.   若元素存儲到二叉樹中則要複寫compareTo(T  o) compare(T  o1  T  o2)方法

21.   對單列集合進行排序用TreeSet,對雙列集合進行排序用TreeMap

22.   TreeSet的底層數據結構用的是TreeMapTreeMap只對存儲元素的key進行排序

實現元素排序有2種方式,一種是讓元素自身具備比較性,一種是讓集合具備比較性

讓元素自身具備比較性,需要讓元素實現Comparable接口,讓集合具備比較性需要自定義一個比較器,並實現Comparator接口

23.   泛型裏面接收的都是引用數據類型

24.   集合變數組:Collection接口的 <T> T[ ] toArray(T  a)方法

25.   數組變集合:Arrays類的<T> List<T> asList(T  a)方法

26.   import static java.util.Arrays.*;//導入的是Arrays這個類中所有的靜態成員

27.   方法的可變參數在使用時需注意:可變參數一定要定義在參數列表最後面

---------------------- ASP.Net+Android+IOS開發 、 .Net培訓 期待與您交流! ----------------------

詳細請查看:http://edu.csdn.net

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章