集合之map集合: 有些时候我们有这样的需求,我们经常会将事物进行编号: 例如:学员信息: it001 张三 22 it002 李四 23 it003 王五 24 我们希望将编号和对象全部存储到集合中,后期可以通过"编号"来获取我们存储的值, 这时,可以考虑使用Map集合; 1、Map集合的特点: 1.使用Key(键),Value(值)对的形式存储; 2.内部会维护Key的唯一性。不管值是什么情况; Map接口中的一些方法:下面方法中的K和V:K:Key(键)(Object) V:Value(值)(Object) 一.添加功能: V put(K key,V value):将指定的值与此映射中的指定键关联(可选操作)。 二.删除功能: V remove(Object key):如果存在一个键的映射关系,则将其从此映射中移除(可选操作)。 void clear():清空集合: 三.获取功能: int size():返回此映射中的键-值映射关系数。 V get(Object key):返回指定键所映射的值;如果此映射不包含该键的映射关系,则返回 null。 Set<K> keySet():返回此映射中包含的键的 Set 视图。 Collection<V> values():返回此映射中包含的值的 Collection 视图。 Set<Map.Entry<K,V>> entrySet():返回此映射中包含的映射关系的 Set 视图。 四.判断功能: boolean containsKey(Object key):如果此映射包含指定键的映射关系,则返回 true。 boolean containsValue(Object value):如果此映射将一个或多个键映射到指定值,则返回 true。 boolean isEmpty():判断Map是否为空; 2、Map的基本功能: put:V put(K key,V value):将指定的值与此映射中的指定键关联(可选操作)。 clear:清空集合: remove:V remove(Object key):如果存在一个键的映射关系,则将其从此映射中移除(可选操作)。 containsKey:boolean containsKey(Object key):如果此映射包含指定键的映射关系,则返回 true。 isEmpty:boolean isEmpty():判断Map是否为空; 使用要找它的子类:HashMap: 代码:HashMap<String,String> map = new HashMap<String,String>(); map.put("it001", "张三");map.clear(); System.out.println("remove(it001) : " +map.remove("it001")); System.out.println("map.containsKey(\"it001\") : " + map.containsKey("it001")); System.out.println("map.isEmpty() : " + map.isEmpty()); 3、 Map的获取功能: V get(Object key):返回指定键所映射的值;如果此映射不包含该键的映射关系,则返回 null。 Set<K> keySet():返回此映射中包含的键的 Set 视图。 Collection<V> values():返回此映射中包含的值的 Collection 视图。 Set<String> keySet2 = map.keySet(); Iterator<String> it2 = keySet2.iterator(); while(it2.hasNext()){ String k = it2.next();String v = map.get(k); System.out.println("键名:" + k + " 值:" + v); Set<Map.Entry<K,V>> entrySet():返回此映射中包含的映射关系的 Set 视图 Set<Map.Entry<String,String>> entrySet = map.entrySet(); for(Map.Entry<String,String> s : entrySet){ System.out.println("循环"); String k = s.getKey(); String v = s.getValue(); System.out.println(k + "--" + v); }
|