麻豆小视频在线观看_中文黄色一级片_久久久成人精品_成片免费观看视频大全_午夜精品久久久久久久99热浪潮_成人一区二区三区四区

首頁 > 編程 > Java > 正文

Thinking in java 集合容器

2019-11-11 06:55:45
字體:
來源:轉載
供稿:網友

1collection 與 collections 的去區別

java.util.Collection 是一個集合接口。它提供了對集合對象進行基本操作的通用接口方法。Collection接口在Java 類庫中有很多具體的實現。Collection接口的意義是為各種具體的集合提供了最大化的統一操作方式。

 Collection   ├List   │├LinkedList   │├ArrayList   │└Vector   │ └Stack   └Set 

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

例如:

Collection <Integer>  collection = new ArrayList<Integer>(ArrayList.asLIst(1,2,3,4));

collection.addAll(ArrayList.asLIst(3,5,8));

collections.addAll(collection,11,12);//將11 12 放到collection中

注意:Collections是Java集合容器的工具類,相比于(1),使用Collections的(2)更靈活。

2 集合中添加另一個集合的方法:

  collection.addAll();

 collectons.addAll(list,a,b);

3collection 用法

3.將其他類型集合轉換為List:

Arrays.asList(非List類型的集合對象/可變參數的對象);方法可以將傳遞的參數轉變為List集合。如:Arrays.asList(new Object1(),new Object2(),…);

Arrays和Collections類似,是Array數組類型集合的工具類。

注意:Arrays.asList()方法轉換后的List對象是一個size不能改變的對象,如果對該對象做增加或者刪除元素操作時,將會報不支持的操作異常。

5.LinkedList:

LinkedList除了實現了基本的List接口以外,還提供了一些特定的方法,使得LinkedList可以方便地實現Stack、Queue以及雙端Queue的功能。

LinkedList提供的非List接口方法:

(1).getFirst():獲取并且不移除LinkedList集合中第一個元素。如果集合為空,拋出NoSuchElementException異常。

(2).element():獲取并且不移除LinkedList集合中第一個元素。如果集合為空,拋出NoSuchElementException異常。

(3).peek():獲取并且不移除LinkedList集合中第一個元素。如果集合為空,則返回null。

(4).removeFirst():獲取并且移除LinkedList集合中第一個元素。如果集合為空,拋出NoSuchElementException異常。

(5).remove():獲取并且移除LinkedList集合中第一個元素。如果集合為空,拋出NoSuchElementException異常。

(6).poll():獲取并且移除LinkedList集合中第一個元素。如果集合為空,則返回null。

(7).addFirst():向LinkedList集合的頭部插入一個元素。

(8).add():向LinkedList集合的尾部插入一個元素。

(9).offer():向LinkedList集合的尾部插入一個元素。

(10).removeLast():獲取并且移除LinkedList集合中最后一個元素。如果集合為空,拋出NoSuchElementException異常。

6.Iterator:

Iterator迭代器在java集合容器中應用比較廣泛,對于List類型的集合,可以通過下標索引值獲取到指定的元素,而對于Set類型的集合,因為Set是沒有索引的,因此只能通過迭代器來遍歷。

Iterator迭代器是一個順序選擇和遍歷集合元素的對象,使用者不需要關心其底層的數據結構和實現方式。Java中的Iterator迭代器是單向的。

Iterator的常用方法如下:

(1).collection對象.iterator()方法:將集合對象轉換為Iterator迭代器。

(2).iterator對象.hasNext()方法:判斷迭代器中是否還有元素。

(3).iterator對象.next()方法:獲取迭代器中下一個元素。(4).iterator對象.remove()方法:刪除迭代器中當前元素。

注意:使用迭代器的好處是,當數據結構從List變為Set之后,迭代集合的相關代碼一點都不用改變。

7.ListIterator:

ListIterator是Iterator的子類,它只能有List類型的集合產生,ListIterator是一個雙向的迭代器,即它可以向前和向后雙向遍歷集合。ListIterator的常用方法如下:

(1).list類型對象.listIterator():將List類型的集合轉換為ListIterator迭代器。

(2).list類型對象.listIterator(int n):將List類型的集合轉換為ListIterator迭代器,同時指定迭代器的起始元素為第n個元素。

(3).listIterator對象.hasNext():判斷迭代器中是否還有下一個元素。

(4).listIterator對象.next():獲取迭代器中的下一個元素。

(5).listIterator對象.hasprevious():判斷迭代器中是否還有前一個元素。

(6).listIterator對象.PRevious():獲取迭代器中的前一個元素。

(7).listIterator對象.set(元素對象):將當前迭代到的元素設置為另一個值。

8.Map遍歷3中方法:Map<String, Object>map = new HashMap<String, Object>();map.put(“test1”, object1);……map.put(“testn” , objectn);(1).Map的values()方法可以獲取Map值的集合:[java] view plain copy    Iterator it = map.values().iterator();      while(it.hasNext()){          Object obj = it.next();      }  (2).Map的keySet方法可以獲取Map鍵的Set集合:[java] view plain copy    Set<String> keys = map.keySet();      for(Iterator it = key.iterator(); it.hasNext(); ){          String key = it.next();          Object obj = map.get(key);      }  (3).通過使用Entry來得到Map的key和value:[java] view plain copy    Set<Map.Entry<String, Object>> entrySet = map.entrySet();      for(Iterator <Map.Entry<String, Object>> it = entrySet.iterator(); it.hasNext(); ){          Map.Entry<String, Object> entry = it.next();          String key = entry.getKey();          Object value = entry.getValue();      }  


發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
主站蜘蛛池模板: 99视频网| 国产成人高清在线观看 | 中文字幕欧美一区二区三区 | 精品国产乱码久久久久久久 | 成人毛片免费看 | 久久综合久久美利坚合众国 | 免费观看又色又爽又黄的崩锅 | 国产精品久久久久久久午夜片 | 欧美.com| 日韩一级网站 | 国产精品免费麻豆入口 | av视在线| 国产亚洲精品久久午夜玫瑰园 | 女18一级大黄毛片免费女人 | 免费看一级毛片欧美 | 色就色 综合偷拍区91网 | 激情久久一区二区 | a视频在线看 | 精品久久久一二三区播放播放播放视频 | 久草视频在线资源 | 国产高潮国产高潮久久久91 | 日本黄色大片免费 | 永久在线观看电影 | 久久99国产精品久久99果冻传媒 | 最新国产毛片 | 国产高潮失禁喷水爽到抽搐视频 | 国产99页| 第四色成人网 | 精品国产一区二区三区四区阿崩 | 精品一区二区三区毛片 | 成人三级黄色片 | 5xx免费看| 久久国产精品久久久久久 | 国产一区精品视频 | av不卡免费在线 | 久久国产精品久久久久久久久久 | 天天夜碰日日摸日日澡性色av | 国产一区精品在线观看 | 成人免费一区二区三区在线观看 | 国产精品剧情一区二区三区 | 日本在线播放一区二区三区 |