Guava学习笔记-Splitter
Guava
文章目录
- Guava
- 1、背景
- 2、说明
- 3、示例
- 3.1 简单使用
- 3.2 包含空字符
- 3.3 跳过空字符
- 3.4 结果去除首尾空格
- 3.5 固定长度分割
- 3.6 指定分割符并限制生成集合数目
- 3.7 使用正则表达式分割
- 3.8 使用正则表达式分割成map
- 4、延伸
- 参考链接
1、背景
对长字符串进行分割,生成一个集合。
2、说明
功能与String.split类似,但更加强大。
3、示例
3.1 简单使用
private String string1 = "hello|world";
private String string2 = "hello|world|||bye";@Test
public void test1() {List<String> list = Splitter.on("|").splitToList("hello | world");System.out.println(list.size());System.out.println(list);
}
输出:
2
[hello , world]
3.2 包含空字符
List<String> list = Splitter.on("|").splitToList(string2);
System.out.println(list.size());
System.out.println(list);
输出:
5
[hello, world, , ,bye]
3.3 跳过空字符
List<String> list = Splitter.on("|").omitEmptyStrings().splitToList(string2);
System.out.println(list.size());
System.out.println(list);
输出:
3
[hello, world, bye]
3.4 结果去除首尾空格
List<String> list = Splitter.on("|").omitEmptyStrings().trimResults().splitToList("hello | world");
System.out.println(list.size());
System.out.println(list);
输出:
2
[hello, world]
3.5 固定长度分割
List<String> list = Splitter.fixedLength(4).splitToList("aaaabbbbccccddddee");
System.out.println(list.size());
System.out.println(list);
输出:
5
[aaaa, bbbb, cccc, dddd, ee]
3.6 指定分割符并限制生成集合数目
List<String> list = Splitter.on("#").limit(3).splitToList("aaaa#bbbb#cccc#dddd#ee");
System.out.println(list.size());
System.out.println(list);
输出:
3
[aaaa, bbbb, cccc#dddd#ee]
3.7 使用正则表达式分割
List<String> list = Splitter.onPattern("\\|").omitEmptyStrings().trimResults().splitToList("hello | world| ||bye");
System.out.println(list.size());
System.out.println(list);
输出:
3
[hello, world, bye]
3.8 使用正则表达式分割成map
Map<String, String> list = Splitter.on(Pattern.compile("\\|")).omitEmptyStrings().trimResults().withKeyValueSeparator("=").split("hello=HELLO | world=WORLD| ||");
System.out.println(list.size());
System.out.println(list);
输出:
2
{hello=HELLO, world=WORLD}
4、延伸
参考链接
Splitter
Guava学习笔记-Splitter相关推荐
- Guava学习笔记:简化异常处理的Throwables类
Guava学习笔记:简化异常处理的Throwables类 参考文章: (1)Guava学习笔记:简化异常处理的Throwables类 (2)https://www.cnblogs.com/peida/ ...
- Guava学习笔记(转)
Guava(瓜娃)学习笔记 Guava工程包含了若干被google的java项目广泛依赖的核心库,例如:集合 [collections] .缓存 [caching] .原生类型支持 [primitiv ...
- Guava学习笔记:缘起
缘起 为什么要使用Guava呢?因为在几年前就是用过Guava的部分功能,当时有一个项目需要通过缓存来提升部分功能的性能,对本地应用缓存和分布式应用缓存进行了相关的调研,在调研本地应用缓存的时候,第一 ...
- Google Guava学习笔记——基础工具类Joiner的使用
Guava 中有一些基础的工具类,如下所列: 1,Joiner 类:根据给定的分隔符把字符串连接到一起.MapJoiner 执行相同的操作,但是针对 Map 的 key 和 value. 2,Spli ...
- Guava学习笔记:EventBus(转)
EventBus是Guava的事件处理机制,是设计模式中的观察者模式(生产/消费者编程模型)的优雅实现.对于事件监听和发布订阅模式,EventBus是一个非常优雅和简单解决方案,我们不用创建复杂的类和 ...
- Guava学习笔记:Google Guava 类库简介
Guava 是一个 Google 的基于java1.6的类库集合的扩展项目,包括 collections, caching, primitives support, concurrency libra ...
- Guava学习笔记 6. 字符串处理[Strings]
非常有用的字符串工具,包括分割.连接.填充等操作 本文简单介绍了一下Guava的一些字符串工具 本文参考自: http://ifeve.com/google-guava-strings/ 并添加了一些 ...
- Guava学习笔记:Preconditions优雅的检验参数
在日常开发中,我们经常会对方法的输入参数做一些数据格式上的验证,以便保证方法能够按照正常流程执行下去.对于可预知的一些数据上的错误,我们一定要做事前检测和判断,来避免程序流程出错,而不是完全通过错误处 ...
- Guava学习笔记:Ordering犀利的比较器
2019独角兽企业重金招聘Python工程师标准>>> Ordering是Guava类库提供的一个犀利强大的比较器工具,Guava的Ordering和JDK Comparator相比 ...
- Guava学习笔记(1)--安全地使用null(Using and avoiding null)
Guava是一个基于java1.6的类库集合, 包含了几个google的核心库, collections, caching, primitives support, concurrency libra ...
最新文章
- 商业大佬提醒:如果不采取措施,美国在人工智能领域将落后于中国
- iptables端口映射实例
- [YTU]_2922(Shape系列-8)
- PHP-sftp文件上传
- php双写绕过,高并发下缓存与数据库双写不一致解决方案
- python映射实体类_【HIBERNATE框架开发之二】第一个HIBERNATE-ANNONATION项目(采用@ENTITY、@ID直接映射实体类)...
- SQL Server 2005 DTS导入平面数据
- LeetCode 541. 反转字符串 II
- wxAdditions使用小结
- 2011年12月份第一周51Aspx源码发布详情
- 【转】VS2017的VSIX插件开发
- 励志c语言编码的开始,基础打开VS操作指南
- rasterization(栅格化)
- WOS搜索输出文件的格式整理
- vue porxy 解决跨域
- GA005-185-10
- SpringBoot+vue仿网易云音乐网站(三)- Springboot项目以及前端vue基础搭建
- VisualStudio找不到Python.h
- deepfakes怎么用_手把手教你使用 Deepfakes 换脸
- 【20】输入一个字符串,统计其中的字母、数字、其他字符的个数。