标签:
Map
也是存放数据的集合
key,value:映射关系
Map<Key的数据类型,value的数据类型>();
Map中key值不能相同
put(k,v);存一对
putAll();存一组
remove(k)删除一对
clear();清空
get(key)获得所对应的value
values();获得map中所有value
entrySet();获得其entry集合,以set形式返回
Entry
keySet():获得集合中的所有key的集合,以set形式返回
isEmpty():判断map是否为空,如果没有元素则返回true
HashMap
HashMap
不是同步的
允许空键,空值
Hashtable
同步的
TreeMap
不是同步的
不能空键
key必须拥有可比较性(key所在的类必须实现comparable接口)
1 package com.qf.hashmapdemo; 2 3 import java.util.Collection; 4 import java.util.HashMap; 5 import java.util.Map; 6 import java.util.Map.Entry; 7 import java.util.Set; 8 9 import com.qf.bean.Person; 10 11 public class HashMapDemo { 12 public static void main(String[] args) { 13 // Map<String,Object> map = new HashMap<String, Object>(); 14 // //使用put方法存值 15 // //如果key值相同后者会覆盖前者 16 // map.put("魏玉森", new Person("森少", 21)); 17 // map.put("魏玉森", new Person("魏玉森", 21)); 18 // map.put("杨林川", new Person("老司机", 16)); 19 // map.put("聂兴德", new Person("聂兴德", 18)); 20 // map.put("小轩", new Person("小轩", 17)); 21 // map.put("高磊", new Person("小磊", 18)); 22 // //获取key的set集合 23 // Set<String> keySet = map.keySet(); 24 // for (String string : keySet) { 25 // System.out.print(string+","); 26 // //获取value 27 // System.out.println(map.get(string)); 28 // } 29 30 HashMap<Person,String> hashMap = new HashMap<Person, String>(); 31 Person p1 = new Person("高磊", 17); 32 Person p2 = new Person("战三", 19); 33 Person p3 = new Person("a", 19); 34 Person p4 = new Person("b", 19); 35 Person p5 = new Person("c", 19); 36 hashMap.put(p1, "石头"); 37 hashMap.put(p2, "三三"); 38 hashMap.put(p3, "三三"); 39 hashMap.put(p4, "三三"); 40 hashMap.put(p5, "三三"); 41 hashMap.put(null, null); 42 //移除一对,返回value 43 String remove = hashMap.remove(p1); 44 System.out.println(remove); 45 //清空map 46 // hashMap.clear(); 47 //判断map是否为空 48 boolean empty = hashMap.isEmpty(); 49 System.out.println(empty); 50 Set<Entry<Person,String>> entrySet = hashMap.entrySet(); 51 for (Entry<Person, String> entry : entrySet) { 52 Person key = entry.getKey(); 53 String value = entry.getValue(); 54 System.out.println(key+","+value); 55 } 56 Collection<String> values = hashMap.values(); 57 for (String string : values) { 58 System.out.println(string); 59 } 60 } 61 }
主方法
1 package com.qf.bean; 2 3 public class Person { 4 private String name; 5 private int age; 6 public Person(String name, int age) { 7 super(); 8 this.name = name; 9 this.age = age; 10 } 11 @Override 12 public String toString() { 13 return "Person [name=" + name + ", age=" + age + "]"; 14 }; 15 16 }
标签:
原文地址:http://www.cnblogs.com/backlight/p/5768298.html