☆藍(lán)色夢(mèng)想☆

          世界總是反反覆覆錯(cuò)錯(cuò)落落地飄去 來不及嘆息 生活不是平平淡淡從從容容的東西 不能放棄
          posts - 57, comments - 5, trackbacks - 0, articles - 0
          java.util.Collections類包含很多有用的方法,可以使程序員的工作變得更加容易,但是這些方法通常都沒有被充分地利用。這一篇文章將通過一些方法的范例化,使讀者了解這些方法帶來的方便。
          Click here to find out more!

          Javadoc給出Collections類最完整的描述:“這一個(gè)類包含可以操作或返回集合的專用靜態(tài)類。”

          使用copy方法可以將一個(gè)java.util.List復(fù)制到其他:

          Collections.copy(newList, sourceList);

          如果你需要使一個(gè)列表隨機(jī)化,可以調(diào)用shuffle方法:

          shuffle(list);

          這一方法可以記錄列表中的內(nèi)容。如果你想返回隨機(jī)列表的來源處,可以調(diào)用它的sibling方法:

          shuffle(List list, Random random)

          如果你需要建立一個(gè)不能更改的集合,可以使用unmodifiableCollection(Collection c)方法。這一方法包含sibling方法,sibling方法可以處理特定類型的Set, List, 和Map。對(duì)于Set和Map,你可以通過使用一些sorted方法來獲得結(jié)果對(duì)象的排序。

          List newList = Collections.unmodifiableList(myList);

          如果你是在編寫需要Enumeration對(duì)象操作方面的代碼,可以充分利用enumeration方法:

          Enumeration e = Collections.enumeration(collection);

          當(dāng)你想使用一個(gè)簡單對(duì)象來代替多個(gè)對(duì)象的時(shí)候,請(qǐng)使用fill(List list, Object obj)方法。

          其他的,當(dāng)你需要具有相同對(duì)象的多個(gè)引用的列表時(shí),可以使用nCopies(int n, Object o)方法。

          當(dāng)你需要在其他列表中查找一個(gè)列表的位置時(shí),請(qǐng)使用indexOfSubList(List source, List target)或者lastIndexOfSubList(List source, List target)方法。如果目標(biāo)列表存在于其他列表中,這一方法將返回包含列表起始位置的索引。如果在列表中無法找到目標(biāo)列表,這兩種方法都返回-1。

          如果你需要使一個(gè)列表的排序相反化(反序),則可以調(diào)用reverse方法,這一方法可以使列表現(xiàn)有元素的序號(hào)重新排序。

          正如你所看到的,collections類包含很多方法。也許你很少使用到某些方法,但你可以會(huì)經(jīng)常使用到其中的一些。

          同樣,也存在三種空的集合域。EMPTY_LIST, EMPTY_MAP, 和EMPTY_SET可以幫助你避免不必要的對(duì)象生成,特別是當(dāng)返回?cái)?shù)據(jù)的空集合的時(shí)候。例如:

          public List getData(Criteria c) {
          ??...
          ??
          ??if ( noData ) {
          ??????return Collections.EMPTY_LIST;
          ??}
          ??
          ??// otherwise
          ??// gather and return data

          ??...?
          }

          你可以建立一個(gè)沒有元素的列表,但是當(dāng)可以避免建立對(duì)象的時(shí)候最好不要建立對(duì)象。

          主站蜘蛛池模板: 新余市| 格尔木市| 嘉义市| 壶关县| 奉贤区| 韶关市| 宝坻区| 新乡市| 甘德县| 朝阳区| 淮南市| 文登市| 合山市| 承德县| 准格尔旗| 福安市| 海城市| 卓资县| 洛川县| 泽库县| 华蓥市| 靖江市| 女性| 南部县| 朔州市| 陕西省| 定西市| 杨浦区| 天气| 海宁市| 万山特区| 苍山县| 绥江县| 孝义市| 三明市| 惠来县| 武山县| 扎赉特旗| 滁州市| 武宁县| 黄山市|