黑馬程序員之<collections ArrayList>

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

1.Collections

  1.概述

 此類時一個工具類,是用來操作集合的。裏面有很多方法可以對集合進行更簡單的操作,使集合具有一定的特點。

2. 排序、反轉、最大值、替換、最大值、二分查找。

  可以利用sort方法對集合進行排序,只能對沒有排序功能的集合進行排序,對TreeSet或者TreeMap有自己的排序功能,那麼就不需要時用此方法進行排序。

  要是使用此方法對集合進行排序,那麼集合中的對象必須具有比較性,那麼就需要時間接口Comparable,或者是定義比較器實現Compatator接口。

 排序的時候,可以按照本身特有的自然排序,也可以自定義比較器來對集合進行設定排序規則。

103022480.jpg

運行結果:

排序前[abc, bcd, te, az, getetd]

排序後[abc, az, bcd, getetd, te]

反轉後的集合:[te, getetd, bcd, az, abc]

集合中最大值:te

二分查找:-1

fill後的集合:[ss, ss, ss, ss, ss]

fillpart後的集合:[ss, ss, 110, 110, ss]

replace後的集合:[kk, kk, 110, 110, kk]

 3.也可以定義一個反轉的比較器,這個一般不提倡,所以我們可以獲得一個反轉比較器,然後在傳給集合

103236650.jpg

 4.線程的安全:

103354632.jpg

 5.ArrayList

是用於操作數組用的,

1. 數組轉成集合

當數組轉成集合後,不能對集合進行刪除和添加元素操作,這樣會報異常,當數組中存放的對象的話,那麼會轉換成集合中相應的類型對象,如果集合中存放的是基本數據類型,那麼集合中的類型必須是此基本類型的數組類型。

將數組轉換成集合,用集合來操作數組更方便,集合中有很多封裝方法可以使用,但是轉換 成集合後,不支持用集合添加新的對象和刪除對象。

如果數組中的元素是基本數據類型,那麼要轉換成集合的時候,在泛型的類型處寫上基本數據數組類型例如List<int []>

103558375.jpg

運行結果:

------------------------

abx

123

re

ture

-------------------------

1

2

33

---------------------------

[I@275cea3

------------------------------

2.集合轉換成數組

將集合轉換成數組的優點:數組長度的確定最好是集合的大小,這樣即可以不浪費空間也不會溢出,好處可以限制對集合的操作,這樣集合中的元素是安全的,例:文件夾中文件列表的訪問。

104049481.jpg

 3.增強for循環:

增強for循環,對集合的操作只能讀取,不能進行刪除或者是增加。其實增強for循環底層就是Iterator迭代器

Iterator迭代器對集合操作可以讀取和刪除

ListIterator迭代器會對集合中的元素進行很多操作,例如增加和刪除…等。

104246910.jpg

4.可變參數

可變參數利用…表示,其實就是一個可變數組,虛擬機幫我們自動封裝,注意事項:可變參數一定要放到參數的最後面。

104414183.jpg

運行結果:

sum=9

sum1=12

你好:張三,李四,


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

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