java集合与guava集合常见使用方法

十年热恋 提交于 2020-10-29 18:50:59

1. HashMap 是无序集合

Map<Integer,Integer> maps= new HashMap<>();
maps.put(9,11);
maps.put(10,23);
maps.put(11,78);
//遍历方式
/*
    Key = 9, Value = 11
    Key = 10, Value = 23
    Key = 11, Value = 78
 */
for (Map.Entry<Integer, Integer> entry : maps.entrySet()) {
    System.out.println("Key = " + entry.getKey() + ", Value = " + entry.getValue());
}

2. LinkedHashMap 是有序集合 可以通过LinkedHashMap的keySet方法遍历

LinkedHashMap<Integer,Integer> maps= new LinkedHashMap<>();
maps.put(9,11);
maps.put(10,23);
maps.put(11,78);
//遍历方式 获取map中key-value
Set<Map.Entry<Integer,Integer>>  entrySet = maps.entrySet();
//通过迭代器遍历set集合
Iterator<Map.Entry<Integer,Integer>> iterator = entrySet.iterator();
while(iterator.hasNext()){
    //每次获取一条对应关系 
    Map.Entry<Integer,Integer> entry = iterator.next();
    System.out.println("key="+entry.getKey()+"  value="+entry.getValue());
}

  3. set集合存放不重复的元素

Set<String> set = new HashSet<String>();
set.add("jack");
set.add("jack");
set.add("bob");
set.add("selena");
//增强for循环遍历
for (String name : set){
    System.out.println(name);
}

  4. guava中的Multimap,特点可以包含有几个重复Key的value

      eg:其中的一个 HashMultimap

//存储数据结构 {key1=[a1,a2],key2=[b1,b2]}
HashMultimap<String,Integer> map = HashMultimap.create();
map.put("jack",20);
map.put("jack",12);
map.put("bob",23);
map.put("bob",34);
map.put("selena",29);
//{selena=[29], bob=[34, 23], jack=[20, 12]}
System.out.println(map.toString());
//通过key获取value [20, 12]
System.out.println(map.get("jack"));

 

标签
易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!