论坛首页 入门技术论坛

集合类的应用

浏览 1896 次
精华帖 (0) :: 良好帖 (0) :: 新手帖 (0) :: 隐藏帖 (0)
作者 正文
   发表时间:2007-11-30  

刚学集合的人可能会搞不明白一些东西,原因是集合类太多了,不知道该怎么用,不知道什么时候用哪个集合类,不知道显示数据的时候用什么集合类来显示,存储数据的时候用什么集合类来显示,他们直接又存在着什么必然的关系,等等。

 这篇文章主要讲集合方面的,会的就不用浪费时间看了。有不对的地方可以给补充下。非常感谢:(

其实,集合是分两个分支的,一个是列表集合,一个是键值对集合

1. 列表集合:Collection是所有列表结合的顶级父类

比较常用的有: ArrayList,  EnumSet, HashSet,LinkedList, TreeSet, Vector

这些集合定义出来的对象 一般都是通过add来添加集合里的元素.比如:

java 代码
  1. List list = new ArrayList();   
  2. list.add("abc");   
  3. list.add("xyz");  

 

去集合里的元素的时候一般来说可以通过两种方式;

第一种,直接get(i)出来。比如:

java 代码
  1. for(int i=0;i
  2.     String str  = (String) list.get(i);   
  3. }  

 

第二种:通过Iterator来取

 

java 代码
  1. for (Iterator iter = list.iterator(); iter.hasNext();) {   
  2.     String str = (String) iter.next();   
  3.     System.out.println(str);   
  4.                
  5. }  

 

 

2. 键值对集合(集合里的元素有key和value键值对构成)。 Map是所有键值对集合的父类。

常用的有:EnumMap, HashMap, Hashtable,  LinkedHashMap, Properties, TreeMap

这些集合定义出来的对象 一般都是通过put来添加集合里的元素.比如:

java 代码
  1. Map map = new HashMap();   
  2. map.put("key1""value1");   
  3. map.put("key2""value2");  

 

取集合元素可以直接通过key值来取的value的值:比如:

java 代码
  1. String str = (String)map.get("key1");  

 

如果想取得集合里的所有的key值,可以这样:

java 代码
  1. Set set = map.keySet();   
  2. for(Iterator iter = set.iterator(); iter.hasNext();){   
  3.     String key = (String)iter.next();   
  4.     System.out.println(key);   
  5. }  

 

取得结合里的所有value值,可以这样:

java 代码
  1. Collection col = map.values();   
  2. for(Iterator iter = col.iterator();iter.hasNext();){   
  3.     String value = (String)iter.next();   
  4.     System.out.println(value);   
  5. }  
论坛首页 入门技术版

跳转论坛:
Global site tag (gtag.js) - Google Analytics