- 浏览: 7943088 次
- 性别:
- 来自: 广州
文章分类
- 全部博客 (2425)
- 软件工程 (75)
- JAVA相关 (662)
- ajax/web相关 (351)
- 数据库相关/oracle (218)
- PHP (147)
- UNIX/LINUX/FREEBSD/solaris (118)
- 音乐探讨 (1)
- 闲话 (11)
- 网络安全等 (21)
- .NET (153)
- ROR和GOG (10)
- [网站分类]4.其他技术区 (181)
- 算法等 (7)
- [随笔分类]SOA (8)
- 收藏区 (71)
- 金融证券 (4)
- [网站分类]5.企业信息化 (3)
- c&c++学习 (1)
- 读书区 (11)
- 其它 (10)
- 收藏夹 (1)
- 设计模式 (1)
- FLEX (14)
- Android (98)
- 软件工程心理学系列 (4)
- HTML5 (6)
- C/C++ (0)
- 数据结构 (0)
- 书评 (3)
- python (17)
- NOSQL (10)
- MYSQL (85)
- java之各类测试 (18)
- nodejs (1)
- JAVA (1)
- neo4j (3)
- VUE (4)
- docker相关 (1)
最新评论
-
xiaobadi:
jacky~~~~~~~~~
推荐两个不错的mybatis GUI生成工具 -
masuweng:
(转)JAVA获得机器码的实现 -
albert0707:
有些扩展名为null
java 7中可以判断文件的contenttype了 -
albert0707:
非常感谢!!!!!!!!!
java 7中可以判断文件的contenttype了 -
zhangle:
https://zhuban.me竹板共享 - 高效便捷的文档 ...
一个不错的网络白板工具
guava库中,包含了很好的join和split的功能,例子如下:
1) 将LIST转换为使用字符串连接的字符串
2)使用joiner把MAP转成STRING
3 将嵌套的collection join起来
4 当使用joiner时候处理null值
有几个对付NULL值的方法,第一个是skipNulls().
或者干脆将null值换掉,就是:
5 使用splitter方法把string转换为list
6 使用splitter将string转为map
7 guava还支持使用多个分隔符来分割字符,比如
8 每隔多少个字符进行分隔
9 还可以让splitter在分割多少个字符后停止分隔,比如
1) 将LIST转换为使用字符串连接的字符串
List<String> names = Lists.newArrayList("John", "Jane", "Adam", "Tom"); String result = Joiner.on(",").join(names); assertEquals(result, "John,Jane,Adam,Tom"); }
2)使用joiner把MAP转成STRING
@Test public void whenConvertMapToString_thenConverted() { Map<String, Integer> salary = Maps.newHashMap(); salary.put("John", 1000); salary.put("Jane", 1500); String result = Joiner.on(" , ").withKeyValueSeparator(" = ") .join(salary); assertThat(result, containsString("John = 1000")); assertThat(result, containsString("Jane = 1500")); }
3 将嵌套的collection join起来
@Test public void whenJoinNestedCollections_thenJoined() { List<ArrayList<String>> nested = Lists.newArrayList( Lists.newArrayList("apple", "banana", "orange"), Lists.newArrayList("cat", "dog", "bird"), Lists.newArrayList("John", "Jane", "Adam")); String result = Joiner.on(";").join(Iterables.transform(nested, new Function<List<String>, String>() { @Override public String apply(List<String> input) { return Joiner.on("-").join(input); } })); assertThat(result, containsString("apple-banana-orange")); assertThat(result, containsString("cat-dog-bird")); assertThat(result, containsString("apple-banana-orange")); }
4 当使用joiner时候处理null值
有几个对付NULL值的方法,第一个是skipNulls().
@Test public void whenConvertListToStringAndSkipNull_thenConverted() { List<String> names = Lists.newArrayList("John", null, "Jane", "Adam", "Tom"); String result = Joiner.on(",").skipNulls().join(names); assertEquals(result, "John,Jane,Adam,Tom"); }
或者干脆将null值换掉,就是:
@Test public void whenUseForNull_thenUsed() { List<String> names = Lists.newArrayList("John", null, "Jane", "Adam", "Tom"); String result = Joiner.on(",").useForNull("nameless").join(names); assertEquals(result, "John,nameless,Jane,Adam,Tom"); }
5 使用splitter方法把string转换为list
@Test public void whenCreateListFromString_thenCreated() { String input = "apple - banana - orange"; List<String> result = Splitter.on("-").trimResults() .splitToList(input); assertThat(result, contains("apple", "banana", "orange")); }
6 使用splitter将string转为map
@Test public void whenCreateMapFromString_thenCreated() { String input = "John=first,Adam=second"; Map<String, String> result = Splitter.on(",") .withKeyValueSeparator("=") .split(input); assertEquals("first", result.get("John")); assertEquals("second", result.get("Adam")); }
7 guava还支持使用多个分隔符来分割字符,比如
@Test public void whenSplitStringOnMultipleSeparator_thenSplit() { String input = "apple.banana,,orange,,."; List<String> result = Splitter.onPattern("[.|,]") .omitEmptyStrings() .splitToList(input); assertThat(result, contains("apple", "banana", "orange")); }
8 每隔多少个字符进行分隔
@Test public void whenSplitStringOnSpecificLength_thenSplit() { String input = "Hello world"; List<String> result = Splitter.fixedLength(3).splitToList(input); assertThat(result, contains("Hel", "lo ", "wor", "ld")); }
9 还可以让splitter在分割多少个字符后停止分隔,比如
@Test public void whenLimitSplitting_thenLimited() { String input = "a,b,c,d,e"; List<String> result = Splitter.on(",") .limit(4) .splitToList(input); assertEquals(4, result.size()); assertThat(result, contains("a", "b", "c", "d,e")); }
发表评论
-
复习:强迫线程顺序执行方式
2019-01-03 23:42 1579方法1: 三个线程,t1,t2,t3,如果一定要按顺序执行, ... -
(转)不错的前后端处理异常的方法
2019-01-02 23:16 2019前言 在 Web 开发中, 我们经常会需要处理各种异常, 这是 ... -
info q的极客时间大咖说等资料下载
2018-08-15 08:40 3470info q的极客时间大咖说等资料下载,还有不少思维导图 链 ... -
CXF 客户端超时时间设置(非Spring配置方式)
2018-07-03 22:38 2236import org.apache.cxf.endpoint. ... -
(转)synchronized关键字画像:正确打开方式
2018-06-14 09:25 490https://mp.weixin.qq.com/s/b3Sx ... -
CountDownLatch的例子
2018-06-13 14:10 691public class StatsDemo { ... -
两道面试题,带你解析Java类加载机制
2018-06-12 16:29 611https://mp.weixin.qq.com/s/YTa0 ... -
Spring中获取request的几种方法,及其线程安全性分析
2018-06-11 09:03 671https://mp.weixin.qq.com/s/KeFJ ... -
内部类小结
2018-06-06 10:25 438https://mp.weixin.qq.com/s/hErv ... -
JVM虚拟机小结1
2018-06-04 20:43 5441 jps -l //列出详细的类名和进程ID 2)jps ... -
windows下自带命令行工具查看CPU资源情况等
2018-06-04 12:53 3101微软提供了不少命令行 ... -
(收藏)深入分析Java的序列化与反序列化
2018-05-30 15:21 617https://mp.weixin.qq.com/s/T2Bn ... -
apache common包中的序列化工具
2018-05-30 09:10 1844什么是序列化 我们的 ... -
JAVA8 JVM的变化: 元空间(Metaspace)
2018-05-24 22:30 967本文将会分享至今为至我收集的关于永久代(Permanent G ... -
(转)服务器性能指标(一)——负载(Load)分析及问题排查
2018-05-21 21:03 1363原创: Hollis Hollis 负载 ... -
(转)对象复用
2018-05-20 15:27 863public class Student { priv ... -
mapreduce中入门中要注意的几点
2018-05-06 08:59 674在 mapreduce中,比如有如下的词: I love b ... -
HDFS的基本操作
2018-05-02 21:47 940-mkdir 在HDFS创建目录 ... -
一个不错的开源工具类,专门用来解析日志头部的,好用
2018-05-02 20:00 772一个不错的开源工具类,专门用来解析日志头部的,好用。 http ... -
介绍个不错的RESTFUL MOCK的工具wiremock
2018-04-27 21:02 1907介绍个不错的RESTFUL MOCK的工具wiremock,地 ...
相关推荐
5. **字符串处理**:Guava的Strings类提供了很多实用的方法,如join()用于连接字符串,split()进行复杂的字符串分割等。 6. **IO流操作**:Guava的Files、ByteStreams、CharStreams等类提供了对文件和流的操作,...
Guava是Google为Java平台设计并维护的一个开源库,它提供了许多高级功能和实用工具,极大地增强了Java开发的效率和代码质量。Guava 26.0-jre版本是针对Java运行时环境(JRE)优化的一个特定版本,旨在更好地支持Java...
例如,它提供了join、split、strip和isNullOrEmpty等实用方法。 6. **I/O工具**:Guava的Files、ByteStreams和CharStreams类提供了许多方便的静态方法,用于处理文件、字节流和字符流操作,简化了I/O操作。 7. **...
5. **字符串处理**:Guava的Strings类包含了许多实用的字符串操作方法,如split、join、substringAfter等,简化了对字符串的操作。 6. **I/O操作**:Guava的IO类提供了对文件、输入/输出流的高效处理,包括读写操作...
Guava的Strings类提供了大量字符串处理函数,如join、split、substringAfter、substringBefore等,使得字符串操作更加简便高效。同时,它还提供了Preconditions类,用于在代码中添加断言,便于调试和预防错误。 六...
Guava的Strings类提供了多种处理字符串的方法,如join、split、leftPad、rightPad等,使得字符串操作更加方便。 6. **预定义常量与检查类** Guava提供了Preconditions、Check类,它们包含了一系列静态方法用于...
Guava的Strings类提供了大量的静态方法,用于处理和操作字符串,如join()、commonSuffix()、split()等,简化了日常的字符串操作。 6. **预计算与记忆化**: Guava的Cache接口支持预计算和记忆化,可以预先计算并...
`CharMatcher` 是Guava中用于字符匹配和处理的一个强大工具。它不仅能够执行复杂的字符匹配,还能对字符串进行灵活的处理。 ```java public void testCharMatcher() { assertEquals( CharMatcher.DIGIT....
7. **字符串处理**:Guava提供了Strings类,包含了很多处理和操作字符串的方法,如isEmpty、join和split等。 8. **验证工具**:Validator类允许在运行时检查对象是否满足特定条件,确保程序的正确性。 9. **事件...
Guava是Google推出的一款开源核心类库,它为Java开发者提供了丰富的工具类和实用工具集合。Guava旨在提高编程效率的同时确保代码的高质量和稳定性。它包含了大量针对日常开发过程中常见问题的解决方案。 **特点**:...
7. **字符串处理**: Guava的`Strings`类包含很多处理字符串的方法,如`join()`, `split()`, `commonPrefix()`等,可以方便地进行字符串连接、分割和比较。 8. **错误处理**: Guava提供了一些优雅的错误处理机制,如...
1. **集合框架**:Guava提供了许多增强的集合类,例如Multiset(多集)、Multimap(多映射)、ImmutableCollection(不可变集合)、BiMap(双向映射)等,这些集合类提供了更强大的功能和更丰富的API。 2. **并发...
总之,Guava是一个强大的工具库,它的各种功能和优化手段可以帮助开发者编写出更加高效、健壮的Java应用。通过使用Guava-19.0.jar、Guava-19.0-sources.jar和Guava-19.0-javadoc.jar,开发者可以充分利用Guava的潜力...
6. **字符串处理**:Guava的Strings类包含了许多实用的字符串操作方法,如join()、split()、substringAfter()等,简化了字符串的处理逻辑。 7. **I/O**:Guava提供了Files类,包含了文件操作的各种便捷方法,如...
3. Strings:Strings类提供了许多静态方法,用于字符串的处理,如trim()、join()、split()等,简化了字符串操作。 总结 Guava库以其丰富的集合框架、强大的并发工具和实用的工具类,极大地提升了Java开发的效率和...
7. **Spring Framework**: Spring框架中的`BeanUtils` 和 `CollectionsUtils` 提供了对象复制和集合操作的便利,而`Assert` 类则提供了断言功能。 8. **Apache Commons Collections**: 提供了对Java集合框架的扩展...
它提供了大量的静态方法,帮助开发者执行各种字符串操作,如检查空值(isBlank, isEmpty)、比较(equals, equalsIgnoreCase)、替换(replace, replaceAll)、分割(split)和连接(join)等。这些方法在处理字符串...
这些库提供了更多的字符串操作功能,如split、join、capitalize等。 总的来说,GuestName处理方法涉及到数据验证、格式化、存储和显示等多个方面。在Java中,我们可以通过字符串操作、正则表达式和自定义方法来实现...
6. **字符串处理**:Guava的Strings类提供了丰富的字符串处理方法,如join()、split()、isBlank()等,可以更方便地进行字符串的连接、分割和验证。 7. **预计算与惰性初始化**:Guava的 Suppliers 和 Suppliers....
本文将详细介绍 Spring 及 Guava 相关工具类的使用说明和代码 demo。这些工具类都是 Java 开发中常用的实用工具,可以帮助开发者快速高效地完成各种任务。 一、Spring 工具类 1. org.springframework.util....