博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
Google的java工具类Guava
阅读量:5051 次
发布时间:2019-06-12

本文共 1567 字,大约阅读时间需要 5 分钟。

前言

google开发java项目肯定也不想重复造轮子,所以肯定也有工具类,就是它了:Guava

我将举例几个实际的例子,发挥这个工具类好用的功能。更多的方法和功能,还有内部的实现可以直接参考

举例

ps:这边都以单个情况举例,如以map举例,那么List等都有类似的功能。

1、创建

原来你可能是这样的:

Map
>> map = new HashMap
>>();

 

现在你可以:

 Map
>> map = Maps.newHashMap(); 

2、初始化

原来你可能是这样的:

Map
map = new HashMap<>(); map.put("key1", "val1"); map.put("key2", "val2");

 

现在你可以:

Map
map = ImmutableMap.of("key1", "val1", "key2", "val2");

 

当然绝大多数情况下,这样的用法用于list较多,map这样的写法,可读性有点差,也多用于测试用例中。

3、比较

原来你可能是这样的:

int a = 1;int b = 2;int compareTo = Integer.valueOf(a).compareTo(Integer.valueOf(b));

 

现在你可以:

int compare = Ints.compare(a, b);

 

其他有Ints,Doubles,Floats,Shorts,Bytes以及Bools等工具类用于操作基本类型的数据很方便

4、list转String

List
list = listOf(1, 2, 3);int[] arr = Ints.toArray(list);

 

5、字符比较分离

//判断字符a~zCharMatcher charMatcher = CharMatcher.inRange('a', 'z').or(CharMatcher.inRange('A', 'Z'));boolean result = charMatcher.matches('a');System.out.println(result);//分离字符串并处理空格和空的情况Iterable
split = Splitter.on(",") .omitEmptyStrings() .trimResults() .split("1,,,2, 3, ,5");for (String temp : split) { System.out.println(temp);}
//转小驼峰 tableName = CaseFormat.UPPER_UNDERSCORE.to(CaseFormat.LOWER_CAMEL, tableName);

 

6、一键多值的map

Multimap
multimap = ArrayListMultimap.create();multimap.put("123", "123");multimap.put("123", "124");System.out.println(multimap.get("123"));//[123, 124]

 

其他很多奇奇怪怪的功能在下面都有,上面只是抛砖引玉。

参考文档博客:

 

转载于:https://www.cnblogs.com/linkstar/p/8863793.html

你可能感兴趣的文章
BZOJ 2338 HNOI2011 数矩形 计算几何
查看>>
关于页面<!DOCTYPE>声明
查看>>
【AS3代码】播放FLV视频流的三步骤!
查看>>
C++标准库vector使用(更新中...)
查看>>
cocos2d-x 2.2.6 之 .xml文件数据读取
查看>>
枚举的使用
查看>>
BZOJ 1531 二进制优化多重背包
查看>>
BZOJ 2324 (有上下界的)费用流
查看>>
python3基础06(随机数的使用)
查看>>
Zookeeper系列(二)特征及应用场景
查看>>
【HTTP】Fiddler(三)- Fiddler命令行和HTTP断点调试
查看>>
Spring Boot使用Druid和监控配置
查看>>
poi 处理空单元格
查看>>
Android 内存泄漏优化总结
查看>>
luogu4849 寻找宝藏 (cdq分治+dp)
查看>>
Spring Cloud微服务笔记(五)Feign
查看>>
C语言键盘按键列表
查看>>
Codeforces Round #374 (Div. 2)
查看>>
oracle数据类型
查看>>
socket
查看>>