资讯详情

集合框架(Map)

一、Map的特点

二、Map的遍历方式

三、HashMap与HashTable之间的区别

四、Map三层嵌套(2)Map 1List)小案例


一、Map的特点

以键值对的形式添加元素,键不能重复,值可以重复。

二、Map的遍历方式

1、获取map集合中所有key的set集合,再通过key获取值value

Map<String, Object> map = new HashMap<String, Object>(); map.put("艾斯", "撒旦"); map.put("全文", "从v"); map.put("这些", "体育件"); map.put("二方", "体育");    //map集合的遍历 1.获取map集合中所有key的set集合,再通过key获取值value Set<String> keySet = map.keySet();    for (String key : keySet) {     ////通过键获得相应的值  Object value = map.get(key);  System.out.println(key "=" value); }

2.首先取出保存的所有键值(Entry)的Set,再遍历此Set即可 (重要点)

Map<String, Object> map = new HashMap<String, Object>(); map.put("艾斯", "撒旦"); map.put("全文", "从v"); map.put("这些", "体育件"); map.put("二方", "体育");    //map2.首先取出并保存所有键值(Entry)的Set,再遍历此Set即可 (重要点) Set<Entry<String, Object>> entrySet = map.entrySet(); for (Entry<String, Object> entry : entrySet) {  System.out.println(entry);  System.out.println(entry.getKey());  System.out.println(entry.getValue()); }

三、HashMap与HashTable之间的区别

1、HashTable

同步既排队 ,线程安全

键不可以为null,值也不能为null

2、HashMap

异步,线程不安全

键可以为null,值也可以为null

四、Map三层嵌套(2)Map 1List)小案例

1、Student.java

public class Student implements Serializable{  /**   *    */  private static final long serialVersionUID = 4682477983251791848L;  private String name;  private Integer source;  public String getName() {   return name;  }  public void setName(String name) {   this.name = name;  }  public Integer getSource() {   return source;  }  public void setSource(Integer source) {   this.source = source;  }    public Student() {   // TODO Auto-generated constructor stub  }  @Override  public String toString() {   return "Student [name="   name   ", source="   source   "]";  }  public Student(String name, Integer source) {   super();   this.name = name;   this.source = source;  } }

2、

public static void main(String[] args) {  Map<String, Map<String,List<Student>>> map =     new HashMap<String, Map<String,List<Student>>>();    //====================================================================     List<Student> als = new ArrayList<Student>();  als.add(new Student("张晓东",90));  als.add(new Student("张晓西",75));     List<Student> bls = new ArrayList<Student>();  bls.add(new Student("张晓北",80));  bls.add(new Student("张晓南",82));     Map<String, List<Student>> amap = new HashMap<String, List<Student>>();  amap.put("T110", als);  amap.put("T111", bls);    //====================================================================   List<Student> cls = new ArrayList<Student>();  cls.add(new Student("张三",90));  cls.add(new Student("李四",100));     List<Student> dls = new ArrayList<Student>();  dls.add(new Student("王五",70));  dls.add(new Student("小六",100));     List<Student> els = new ArrayList<Student>();  els.add(new Student("小八",70));  els.add(new Student("小九",100));     Map<String, List<Student>> bmap = new HashMap<String, List<Student>>();  bmap.put("T206", cls);  bmap.put("T222", dls);  bmap.put("T208", els);    //===================================================================

	List<Student> fls = new ArrayList<Student>();
	fls.add(new Student("可乐",60));
	fls.add(new Student("雪碧",50));
		
	List<Student> gls = new ArrayList<Student>();
	gls.add(new Student("哇哈哈",90));
	gls.add(new Student("老干妈",80));
		
	Map<String, List<Student>> cmap = new HashMap<String, List<Student>>();
	cmap.put("T230", fls);
	cmap.put("T231", gls);
			
	map.put("卓京初中部",amap);
	map.put("卓京高中部",bmap);
	map.put("卓京大学部",cmap);
		
	Set<String> keySet = map.keySet();
	for (String key : keySet) {
		Map<String, List<Student>> value = map.get(key);
		System.out.println(key);
		Set<String> keySet2 = value.keySet();
		for (String key2 : keySet2) {
			System.out.println("\t"+key2);
			List<Student> ls = value.get(key2);
			for (Student stu : ls) {
				System.out.println("\t\t"+stu.getName()+"  "+stu.getSource());
			}
		}
	}
}

3、运行效果:

卓京高中部
	T208
		小八  70
		小九  100
	T206
		张三  90
		李四  100
	T222
		王五  70
		小六  100
卓京大学部
	T231
		哇哈哈  90
		老干妈  80
	T230
		可乐  60
		雪碧  50
卓京初中部
	T110
		张晓东  90
		张晓西  75
	T111
		张晓北  80
		张晓南  82

标签: t110电容

锐单商城拥有海量元器件数据手册IC替代型号,打造 电子元器件IC百科大全!

 锐单商城 - 一站式电子元器件采购平台  

 深圳锐单电子有限公司