Collections包裝類 & List和數組互相轉化

java.util.Collection是一個集合接口。他提供了對集合對象進行基本操作的通用接口方法,Collection接口的意義是爲各種具體的集合提供了最大化的統一操作方式。

java.util.Collections是一個包裝類。它包含各種有關集合操作的靜態多態方法,此類不是實例化,就像一個工具類,服務於java的Collection框架。

  • Collections 比數組好--數組轉化成list

除少數情況外,好的做法是儘快將遇到的任何數組轉換成集合。於是問題來了,完成這種轉換的最容易的方式是什麼?事實證明,Java Collections API 使這種轉換變得容易。

Arrays.asList(array); 注意:Java中Arrays的asList()方法可以將數組轉爲List。 但是這個數組類型必須是 引用類型的,如果是8種基本數據類型就不可以。原因請查看http://blog.csdn.net/anders_zhuo/article/details/8960996

wKioL1ia7M7jlTTbAAAZaFkwvns655.png

wKioL1ia7QyBDWnSAABAmS4SOfg787.png

如果是8種基本類型,可以for循環一個個把他們加到list裏面,注意轉化成包裝類後加到list裏面。

wKioL1icGM6QEDJmAABEEaGqmPs969.png

  • 排序  Collections.sort(list);
    實現原理:把list轉化成數組,數組排序(一般是數值的排序)

    Object a[] = list.toArray();

    Arrays.sort(a);  //此時a是排好序的數組了

  • 混排 Collections.Shuffling(list)

  • 反轉 Collections.reverse(list)

    112, 111, 23, 456, 231 反轉後是231,456,23,111,112

  • 替換所有元素 Collections.fill(list,'aaa');

      {"dd","aa","bb","cc","ee"}; 替換後是aaa,aaa,aaa,aaa,aaa

  • 拷貝 Collections.copy(list,li): 後面一個參數是目標列表 ,前一個是源列表

  • 返回Collections中最小元素(min)Collections.min(list);

  • 返回Collections中最大元素(max)Collections.max(list);

  • lastIndexOfSubList(list,li);   li在list中最後出現的起始位置

  • IndexOfSubList(list,li);  li在list中第一次出現的起始位置

  • Rotate(list, -1); 根據指定的距離循環移動指定列表中的元素; 負數往右移動


補充個list轉數組的方法list.toArray()

wKiom1idI9TB5VxZAAAqONVYZXQ990.png


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