欧美三区_成人在线免费观看视频_欧美极品少妇xxxxⅹ免费视频_a级毛片免费播放_鲁一鲁中文字幕久久_亚洲一级特黄

Java的集合類

系統(tǒng) 1848 0

Java的集合類 就好比一個(gè)容器,用來盛放Java類的對(duì)象。有些容器內(nèi)所放的東西是可以操作的,而有些則是不可以的。

Java的集合類是由java.util包所提供的,常用的有Map,Set和List,而Set和List實(shí)現(xiàn)了Collection接口。

1.認(rèn)識(shí)Collection接口

Collection接口 是Set接口和List接口的父接口,通常情況下不被直接使用,但定義了一些通用方法,通過這些方法可以實(shí)現(xiàn)對(duì)集合的基本操作。

Collection接口的常用方法如下:

1) add(): 向集合中添加對(duì)象

2) remove(): 向集合中移除對(duì)象

3) isEmpty(): 判斷當(dāng)前集合是否為空

4) iterator(): 返回迭代器,用于遍歷集合中的對(duì)象

5) size(): 獲取集合中元素的個(gè)數(shù)

6) clear(): 清空集合

7) contains(): 判斷集合中是否存有指定的對(duì)象

8) addAll(): 把指定集合中所有的對(duì)象添加到集合中

Collection接口常用方法實(shí)例代碼如下:

    /**
 *Colletion接口常用方法實(shí)例
 */

import java.util.*;

public class CollectionDemo {
 /**
  *方法描述:輸出集合類的元素
  *輸入?yún)?shù):Collection<String> list
  *返回類型:void
  */
 public static void printCollectionElem(Collection<String> list) {
  if(!list.isEmpty()) {//isEmpty()方法的使用
    System.out.println("集合不為空,集合中的元素:");
    Iterator<String> it = list.iterator();//iterator()方法的使用

    while(it.hasNext()) {
      System.out.println(it.next());
    }
  }
 }

 public static void main(String[] args) {
  String str1 = "深圳大學(xué)";
  String str2 = "中山大學(xué)";
  String str3 = "暨南大學(xué)";

  Collection<String>list = new ArrayList<String>();
  list.add(str1);//add()方法的使用
  list.add(str2);
  list.add(str3);
  
  printCollectionElem(list);

  Collection<String>list1 = new ArrayList<String>();
  list1.addAll(list);//addAll()方法的使用
  printCollectionElem(list1);

  list1.remove(str1);//remove()方法的使用
  printCollectionElem(list1);

  System.out.println("list中的元素個(gè)數(shù):" + list.size());//size()方法的使用

  Collection<String>list2 = new ArrayList<String>();
  list2.add(str1);
  list2.add(str3);
  list.removeAll(list2);//removeAll方法的使用
  printCollectionElem(list2);
  printCollectionElem(list);

  list.clear();//也等價(jià)于list.removeAll(list);
  printCollectionElem(list);
 }
}
  

運(yùn)行結(jié)果如下所示:

Java的集合類
2.認(rèn)識(shí)Map集合

Map集合 包括 Map接口 實(shí)現(xiàn)Map接口的類

map接口沒有繼承Collection接口,提供key到value的映射。map接口的常用方法如下:

1) clear(): 清空

2) isEmpty(): 判斷集合元素是否為空

3) size(): 獲取集合元素的個(gè)數(shù)

4) put(key k,value v): 向集合中添加鍵值映射

5) get(Object key): 返回指定鍵對(duì)象所對(duì)應(yīng)的值

6) keySet(): 返回該集合中所有鍵對(duì)象形成的Set集合

7) values(): 返回該集合中所有值對(duì)象形成的Collecion集合

Map接口的實(shí)現(xiàn)類有HashMap類和TreeMap類。如果經(jīng)常需要添加、刪除和定位映射關(guān)系,建議利用HashMap類實(shí)現(xiàn)Map集合,不過在遍歷集合時(shí),得到的映射關(guān)系可能是無序的,若是需要有序,可以利用TreeMap類。Map集合的遍歷需要先獲得Key集合和Value集合,再分別遍歷。

關(guān)于Map集合的實(shí)例代碼如下:

    /**
 *Map集合的實(shí)例
 */
import java.util.*;

class User {
 public User(String id,String name) {
  this.id = id;
  this.name = name;
 
 }

 public void setName(String name) {
  this.name = name;
 }
 public String getName() {
  return this.name;
 }
 public void setId(String id) {
  this.id = id;
 }
 public String getId() {
  return this.id;
 }

 private String id;
 private String name;
 
}

public class MapDemo {
 public static void main(String[] args) {
  Map map = new HashMap();
  User user1 = new User("001","tom");
  User user2 = new User("002","jack");
  User user3 = new User("003","steven");
 
  map.put(user1.getId(),user1.getName());
  map.put(user2.getId(),user2.getName());
  map.put(user3.getId(),user3.getName());
  
  Set set = map.keySet();
  if(!set.isEmpty()) {
   Iterator it = set.iterator();
   System.out.println("HashMap類實(shí)現(xiàn)的Map集合,內(nèi)容如下:");
   while(it.hasNext()) {
    String str = (String)it.next();
    String name = (String)map.get(str);
    System.out.println(str + " " + name);
   }
  }
 
  TreeMap treeMap = new TreeMap();
  treeMap.putAll(map);
  Iterator it1 = treeMap.keySet().iterator();
  System.out.println("TreehMap類實(shí)現(xiàn)的Map集合,內(nèi)容如下:");
   while(it1.hasNext()) {
    String str = (String)it1.next();
    String name = (String)map.get(str);
    System.out.println(str + " " + name);
   }
 }
}
  

運(yùn)行結(jié)構(gòu)如下所示:

Java的集合類

3.認(rèn)識(shí)Set集合和List集合

Set集合包括Set接口和實(shí)現(xiàn)Set接口的類,List集合包括List接口和實(shí)現(xiàn)List接口的類,Set接口和List接口都繼承Collection接口。Set集合不可以存在重復(fù)的對(duì)象,因而對(duì)重復(fù)的對(duì)象不進(jìn)行添加操作。List集合可以存在重復(fù)的對(duì)象,也可以對(duì)重復(fù)的對(duì)象進(jìn)行添加操作。

Set接口常用的實(shí)現(xiàn)類有HashSet類和TreeSet類。List接口常用的實(shí)現(xiàn)類有ArrayList類和LinkList類。ArrayList類采用數(shù)組結(jié)構(gòu)保存對(duì)象,便于對(duì)集合進(jìn)行快速的隨機(jī)訪問,但是對(duì)于插入或刪除指定索引位置的對(duì)象效能較差,尤其是對(duì)于大數(shù)據(jù)問題。LinkList類采用鏈?zhǔn)浇Y(jié)構(gòu)保存對(duì)象,便于對(duì)集合指定索引位置進(jìn)行插入或刪除操作,但是遍歷速度較慢。關(guān)于Set接口以及實(shí)現(xiàn)的類和List接口以及實(shí)現(xiàn)的類的常用方法可以閱讀J2SE官方文檔。

4.總結(jié)

1.Java集合類包括Map集合、Collection接口以及繼承了Collection接口的Set集合和List集合。Map集合包括Map接口和實(shí)現(xiàn)Map接口的常用類HashMap與TreeMap,Set集合包括Set接口和實(shí)現(xiàn)Set接口的常用類HashSet與TreeSet,List集合包括List接口和實(shí)現(xiàn)List接口的常用類ArrayList與LinkList。

2.java集合好比一個(gè)容器,用來放對(duì)象的。Java集合里面的元素都是對(duì)象,通過各種方法可以完成添加、刪除、插入、遍歷等操作。

參考資料

【1】明日科技 李鐘尉,陳丹丹編著.Java編程寶典.北京:人民郵電出版社,2010.

Java的集合類


更多文章、技術(shù)交流、商務(wù)合作、聯(lián)系博主

微信掃碼或搜索:z360901061

微信掃一掃加我為好友

QQ號(hào)聯(lián)系: 360901061

您的支持是博主寫作最大的動(dòng)力,如果您喜歡我的文章,感覺我的文章對(duì)您有幫助,請(qǐng)用微信掃描下面二維碼支持博主2元、5元、10元、20元等您想捐的金額吧,狠狠點(diǎn)擊下面給點(diǎn)支持吧,站長非常感激您!手機(jī)微信長按不能支付解決辦法:請(qǐng)將微信支付二維碼保存到相冊(cè),切換到微信,然后點(diǎn)擊微信右上角掃一掃功能,選擇支付二維碼完成支付。

【本文對(duì)您有幫助就好】

您的支持是博主寫作最大的動(dòng)力,如果您喜歡我的文章,感覺我的文章對(duì)您有幫助,請(qǐng)用微信掃描上面二維碼支持博主2元、5元、10元、自定義金額等您想捐的金額吧,站長會(huì)非常 感謝您的哦!!!

發(fā)表我的評(píng)論
最新評(píng)論 總共0條評(píng)論
主站蜘蛛池模板: 久久一区二区三区四区 | 91不卡在线 | 一级做性色a爰片久久毛片 亚洲午夜精品久久久久久app | 亚洲第1页 | 国产羞羞网站 | 古装三级在线观看 | 精品亚洲永久免费精品 | 亚洲成人免费网站 | 日日麻批的全部过程 | 久草视频在线观 | 久操中文| 大ji巴好好爽好深网站 | 久久精品亚洲 | 国产日韩精品视频 | 亚洲精品在 | 国产日韩一区二区三区 | 日本高清无遮挡 | 欧美成人影院在线观看三级 | 国产精品久久久久一区二区三区 | 免费1级片 | 成年人免费网站视频 | 欧美精品一区二 | 成人免费网站www网站高清 | 91精品国产爱久久久久 | 毛片毛片毛片毛片毛片毛片 | 国产在线精品一区 | 99热播放| 亚洲天堂av在线 | 色综合久久综合欧美综合图片 | 日本在线视频不卡 | 91 视频网站| www伊人网 | 国产在线一区二区三区 | 亚洲第一激情 | 久久久日韩精品一区二区 | 香蕉国产成版人视频在线观看 | 天天摸夜夜摸狠狠摸夜夜摸 | 久久久久在线观看 | 精品日本三级在线观看视频 | 国产欧美日本亚洲精品五区 | 激情综合网五月 |