1. 一、集合与数组
集合的长度是可变的,用来存放对象的引用;数组的长度是固定,用来存放基本类型。
2. 二、Java集合类的继承关系
三、List、Map、Set集合的分析
3. 1.List集合:包括所有List接口与List所有实现类,集合中元素可重复,各元素的顺序就是插入的顺序。
使用List接口:先声明为List类型,然后对集合进行实例化,List接口常用的实现类有:ArrayList与LinkList
如:List<String> list=new ArrayList<String>();
2 .Set集合:将对象不按顺序,只是简单加入集合中,且不能包含重复的对象。
使用Set接口:先声明为Set类型,然后对集合进行实例化,Set接口常用的实现类:HashSet与TreeSet类。如: Set<String> set=new HashSet<String>();
3.Map集合:没有继承Collection接口,提供的是key与value映射,且不能包含相同的key值,key与value是一对一映射。
使用Map接口:先声明为Map类型,然后对集合进行实例化,Map接口常用的实现类:HashMap与TreeMap类。如:Map map=new HashMap<String,String>()
获取指定的key与value值,先通过相应方法获取Key或value集合,在从集合中变量指定的值
四、List,Set,Map的区别
接口 | 是否有序 | 能否充许元素重复 | |
Collection | 否 | 能 | |
List | 实现类 | 是 | 能 |
ArrayList | |||
LinkedList | |||
Vector | |||
Set | 实现类 | 否 | 否 |
HashSet | |||
TreeSet | |||
Map | 实现类 |
| 使用Key-Value键值对关系存储数据,Key是唯一的,Value可重复 |
HashMap | |||
TreeMap | |||
HashTable |
五遍历Map集合的三种方式:
package com.collection;
import java.util.Collection;
import java.util.HashMap;
import java.util.Iterator;
import java.util.Map;
import java.util.Map.Entry;
import java.util.Set;
public class MapTest {
public static void main(String[] args) {
Map m=new HashMap();
m.put("111", new Person(1,"zs"));
m.put("222",new Person(2,"ls"));
m.put("333", new Person(3,"ww"));
System.out.println(m.size());
Person p=(Person) m.get("333");
System.out.println(p);
m.remove("333");
System.out.println(m);
//三种遍历方式:Set value entryset
System.out.println("遍历一:");
Set keyset=m.keySet();//取得所有set的集合
Iterator it=keyset.iterator();
while(it.hasNext()){
String s=(String) it.next();
System.out.println(s+"="+m.get(s));
}
System.out.println("遍历二:");
Collection value=m.values();//取得所collection的集合
for(Iterator its=value.iterator();its.hasNext();){
Person person=(Person) its.next();
System.out.println(person);
}
System.out.println("遍历三:");
Set entry=m.entrySet();
for(Iterator ite=entry.iterator();ite.hasNext();){
Map.Entry ms = ( Map.Entry)ite.next();
System.out.println(ms.getKey()+"="+ms.getValue());
}
}
}