Java集合框架(一)
生活随笔
收集整理的這篇文章主要介紹了
Java集合框架(一)
小編覺得挺不錯的,現在分享給大家,幫大家做個參考.
集合:用來存放多種元素的一種類型。
框架:是一種結構體系,有多個類構成。
下面介紹兩種常用的集合,即Collection集合和Map集合。
Collection集合
| ? ? ? ? ? ?Collection(接口)? ? ? | ||||
| ?List(子接口) | ? ? ?Set(子接口) | |||
| ArrayList、LinkedList、Verctor | HashSet、TreeSet | |||
??如上表所示,Collection是個單列集合,一個接口,下面主要有List和Set兩個子接口,List子接口下面又包含ArrayList、LinkedList和Vector具體實現類;Set子接口下面主要有HashSet和TreeSet具體實現類。
說明:
List接口是有索引,而Set接口無索引;
HashSet里面元素是有序的,TreeSet里面元素是無序的;
ArrayList:動態數組,表示數組長度可變;
Vector 向量:基于數組實現的,但是已經過時,現在都用ArrayList。
ArrayList和LinkedList 比較
ArrayList,LinkedList 使用方法完全一樣, 區別在于數據存儲方式不同,稱為不同的數據結構。
| ?實現機制 | ? ? ? ?優點 | ? ? ? ? 缺點 | |
| ArrayList | 基于數組實現 | 連續存放,查找速度比較快。 | 增加元素或者刪除元素比較慢。 |
| LinkedList | 基于鏈表實現 | 增加元素或刪除元素比較快 | 不連續存放,查找速度比較慢 |
一個ArrayList的示例
public?class?Test?{public?static?void?main(String[]?args)?{ArrayList<String>?al=new?ArrayList<String>();al.add("beijing");al.add("tianjin");al.add("shanghai");al.add(1,?"guangzhou");//在索引為1的位置上加入元素guangzhouShow1(al);al.set(1,?"廣州");//把索引為1的位置上元素修改為廣州System.out.println("*****************");Show2(al);System.out.println("*****************");al.remove(2);//刪除索引為2的元素,即tianjin,元素索引從0開始Show2(al); } /**兩種循環*/ //方法一:for循環 public?static?void?Show1(ArrayList<String>?al){????for(int?i=0;i<al.size();i++){System.out.println(al.get(i));} } //方法二:iterator遍歷器遍歷 public?static?void?Show2(ArrayList<String>?al){Iterator<String>?it=al.iterator();//相當于元素指針while(it.hasNext())//判斷有沒有下一個{System.out.println(it.next());}} }運行結果如圖
下篇博文再介紹Map集合。
轉載于:https://blog.51cto.com/zhangyh8856643/1829364
總結
以上是生活随笔為你收集整理的Java集合框架(一)的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 软件测试面试总结
- 下一篇: Java处理某些图片红色问题