JAVA SE回顾--集合(2)

来源:互联网 发布:淘宝商城家具城松木床 编辑:程序博客网 时间:2024/05/20 06:09

Map接口:

  Map接口是一个与Collection并列的集合接口,它是一个双列的集合接口,也就是存储一对元素,元素由键和值组成。

Map集合的常用方法:

  void clear():移除集合中的所有键值对

  V remove(Object key):根据键移除键值对元素,并返回值

  boolean containsKey(Object key):判断集合是否包含指定的键

  boolean containsValue(Object value):判断集合中是否包含指定的值
  boolean isEmpty():判断集合是否为空

  Set<Map.Entry<K,V>> entrySet():获取键值对对象的集合,遍历键值对对象,利用getKey(),getValue()取出键和值
  V get(Object key):根据键获取值
  Set<K> keySet():获取所有的键
  Collection<V> values():获取所有的值

  V put(K key,V value):集合添加键值对
  int size():键值对对数。

HashMap集合的特点:

  HashMap集合是Map集合的实现类,它实现了Map接口的方法。他的元素输入顺序不能与输出顺序相对应,底层是哈希表结构。键不能重复,值可以重复。


HashMap集合的遍历:

1.keySet()方法可以将HashMap的键存入keySet之中,keySet实际是一个实现了Set接口的类的对象。可以把它当做一个集合来使用。

Set<K> keySet():返回一个包含所有键的一个集。

//遍历,通过键找值Set<String> keys = hm.keySet();for (String key : keys) {System.out.println(key+"  "+hm.get(key));}
2.Set<Map.Entry<K,V>> entrySet():返回Map.Entry对象的一个集合。

//通过找到键值对,来找键和值Set<Entry<String,String>> entrySet = hm.entrySet();for (Entry<String, String> entry : entrySet) {System.out.println(entry.getKey()+"  "+entry.getValue());}

注:如果在HashMap中存储自定义类型也需要重写HashCode()和equals()方法。