在项目中,集合类的使用非常普遍。经常需要创建很多的集合类。使用guava可以简化我们的代码,不但可以使代码看起来更加简洁,而且更加优雅。
比如:
使用java原生创建一个HashMap时,我们通常这样。
Map<String, Object> hashMap = new HashMap<String, Object>();
使用guava创建一个HashMap时,可以这样。
Map<String, Object> hashMap = Maps.newHashMap();
guava的Maps类的newHashMap()方法实现是这样的:
public static <K, V> HashMap<K, V> newHashMap() {
return new HashMap();
}
这样就可以避免两边都要加上泛型,使代码更加的简洁。
同样的,guava中也有一个Lists的类,也可以方便的生成list,而且还有很多的重载方法扩展了功能。
例如:
public static <E> ArrayList<E> newArrayList(E... elements) {
Preconditions.checkNotNull(elements);
int capacity = computeArrayListCapacity(elements.length);
ArrayList list = new ArrayList(capacity);
Collections.addAll(list, elements);
return list;
}
可以通过可变参数构造出一个ArrayList,使用起来非常的方便。
当然这知识冰山一角,guava的很多很牛的功能还需要大家慢慢去发现。