Guava库
Guava是Google提供的JAVA拓展类库,其对JDK原生类库进行了拓展和优化。实现了很多实用的新功能和数据结构,且优化了很多JDK已有方法,大大提高了执行效率。一些相同功能,在相同情况对比JDK8的原生方法,都有明显的速度优势。
一 集合容器
1.1 集合常用处理
集合的相应处理主要由Guava提供的Lists,Sets,Maps,Collections2等工具类中静态方法实现。
1.1.1 交并差集合
//Set类型 (set1,set2 <Integer>)
Sets.SetView<Integer> inter=Sets.intersection(set1,set2); //交集
Sets.SetView<Integer> diff=Sets.difference(set1,set2); //差集,在A中不在B中
Sets.SetView<Integer> union=Sets.union(set1,set2); //并集
System.out.println(union);
//Map类型
Maps.difference(mapA,mapB):MapDifference;
1.1.2 集合过滤
//过滤list中满足条件的,input是list中的每一个元素
List<String> list;
Collection<String> f= Collections2.filter(list, input -> {return input.startsWith("h");});
//Map过滤值
Map<Integer,Integer> map1=Maps.filterValues(map, input -> {return input.intValue()==1;});
//Map过滤键
Map<String,Integer> map1=Maps.filterKeys(map, input -> {return input.startsWith("a");});
//Map过滤Entriy
Map<String,String> map1=Maps.filterEntries(map,input -> {
return input.getValue().equals("1") && input.getKey().startsWith("a");
});
1.1.3