Guava常用方法
程序员文章站
2022-05-10 10:42:19
简介 Guava,中文是石榴的意思,Guava项目,是基于java的Google的开源的工具类库,包含了许多被Google的java项目广泛依赖的核心库, 例如:集合、缓存、原生类型支持、并发库、通用注解、字符串处理、I/O 等等。 所有这些工具每天都在被Google的工程师应用在产品服务中。 为什 ......
简介
Guava,中文是石榴的意思,Guava项目,是基于java的Google的开源的工具类库,包含了许多被Google的java项目广泛依赖的核心库,
例如:集合、缓存、原生类型支持、并发库、通用注解、字符串处理、I/O 等等。 所有这些工具每天都在被Google的工程师应用在产品服务中。
为什么项目开发中我们要选择Guava,借用网友的回答:
•瓜娃是java API蛋糕上的冰激凌(精华)
•高效设计良好的API
•被google的开发者设计,实现和使用
•遵循高效的java这本书的好的语法实践
•使代码更刻度,简洁,简单
•使用java 1.5的特性
•流行的API,动态的开发
•它提供了大量相关的应用类,集合,多线程,比较,字符串,输入输出,缓存,网络,原生类型,数学,反射等等
•百分百的单元测试,被很多的项目使用,帮助开发者专注业务逻辑而不是写java应用类
•节省时间,资源,提高生产力
•我的目的是为基本的java特征提供开源代码的支持,而不是自己再写一个
•ApacheCommon库Apache是一个很好的成熟的库,但是不支持泛型,Apache对早起的java版本很有用-1.5之前的
•java7,java8 最新的java支持一些guava的API
在项目开发中适当的场景灵活运用Guava,可使我们省去复杂的数据处理,代码简介易用,不易出错,
代码可读性健壮性增强,让我们有更多时间专注业务的处理,总之就是使我们的代码更加的优雅。
Maven依赖
1 <dependency> 2 <groupId>com.google.guava</groupId> 3 <artifactId>guava</artifactId> 4 <version>19.0</version> 5 </dependency>
字符串检查工具
1 /** 2 * Guava Strings工具类的使用,null和empty的判断与转化 3 * @author chenleixing 4 */ 5 public void testStrings(){ 6 Strings.isNullOrEmpty("");//返回true 7 Strings.nullToEmpty(null);//"" 8 Strings.nullToEmpty("chen");//返回"chen" 9 Strings.emptyToNull("");//返回null 10 Strings.emptyToNull("chen");//返回"chen" 11 12 Strings.commonPrefix("aaab", "aac");//"aa"否则返回"" 13 Strings.commonSuffix("aaac", "aac");//"aac"否则返回"" 14 }
NULL值检查
先决条件检查
1 //判断参数1的布尔值,如果为假抛出第二个参数的异常信息IllegalArgumentException 2 Preconditions.checkArgument(i>0,"Argument was %s but expected nonnegative");
判断对象是否为null
1 //判断参数1的布尔值,如果为null 抛出第二个参数的异常信息NullPointerException 2 Preconditions.checkNotNull(null,"该对象为Null");
操作集合
之前
1 Map<String, Map<Long, List<String>>> map = new HashMap<String, Map<Long,List<String>>>();
用Guava
1 Map<String, Map<Long, List<String>>> map = Maps.newHashMap();
之前
1 List<String> list = new ArrayList<String>(); 2 list.add("a"); 3 list.add("b"); 4 list.add("c"); 5 list.add("d");
现在
1 List<String> list =Lists.newArrayList("a","b","c","d");
参考:
Guava 官方教程(中文版)http://ifeve.com/google-guava/