`

guava Joiner以及MapJoiner的用法

阅读更多
guava joiner主要用于字符串的拼接:传统的假如我们想要拼接一个list以某个分割符分割我们自己编程大概代码如下:

public static String concatString(List<String> lists,String delimiter){
		StringBuilder builder = new StringBuilder();
		for(String s : lists){
			if(s!=null){
				builder.append(s).append(delimiter);
			}
		}
		builder.setLength(builder.length()-delimiter.length());
		return builder.toString();
	}


这段代码没什么好说的,比较简单。但是这只是针对list集合,可能还会针对数组等其他数据结构的字符串拼接。自己实现还是有些麻烦。为此guava为我们提供了一个joiner类来负责拼接。

例如上面的代码可以改写为:
Joiner.on("|").join(lists);

一句代码即解决。
此外joiner还提供了两个方法分别是过滤null和将null替换为某个字符串。

Joiner.on("|").useForNull(" 没有").join(lists);
Joiner.on("|").skipNulls().join(lists);



MapJoiner的用法和Joiner类似,不过MapJoiner主要针对map的字符串拼接例:
Map<String,String> maps = Maps.newHashMap();
		maps.put("id", "1");
		maps.put("name", "2");
		String ss= Joiner.on("&").withKeyValueSeparator("=").join(maps);
分享到:
评论

相关推荐

    guava使用方法教程

    guava 使用方法 教程

    guava-18.0(guava-18.0.jar和guava-18.0-sources.jar)

    5. **字符串处理**:Guava提供了Strings类,包含各种字符串操作的静态方法,如Escaper和Joiner等工具。 6. **I/O工具**:Guava提供了Files、ByteStreams、CharStreams和Charsets等类,简化了文件和流的操作。 7. **...

    不加密Google Guava视频教程.txt

    ├─Google Guava 第01讲-Joiner详细介绍以及和Java8Collector对比.wmv ├─Google Guava 第02讲-Guava Splitter详细讲解以及实战练习.wmv ├─Google Guava 第03讲-Preconditions&Objects;&assert;讲解.wmv ├─...

    重试框架spring-retry以及guava-retry的使用

    本文将深入探讨两个常用的重试框架:Spring Retry和Guava Retry,并通过一个名为`retry-starter`的Spring Boot项目实例,来解析它们的使用方式以及差异。 首先,我们来看Spring Retry。Spring Retry是Spring框架的...

    Guava 工程项目包 有实例

    - **Joiner 和 Splitter**:Guava 提供了 Joiner 和 Splitter 类,用于高效地连接字符串和分割字符串,比使用 "+" 或 String.split() 更加灵活和高效。 - **预格式化字符串**:Preconditions 类提供了一些静态方法...

    guava多个版本jar包

    Guava是Google开发的一个Java库,它包含许多Google核心库使用的功能,如集合、缓存、并发库、原生类型支持、字符串处理、I/O等。这个压缩包包含的是Guava的不同版本,分别是guava-2.6.2.jar、guava-18.0.jar、guava-...

    Google Guava 官方教程

    这个官方教程将深入探讨这些关键特性和使用方法。 1. **集合框架增强** Guava 提供了丰富的集合类,如 Multiset(多集)、Multimap(多映射)和 Table(表格)。它们允许开发者处理更复杂的数据结构。例如,...

    guava-18.0-API文档-中文版.zip

    赠送jar包:guava-18.0.jar;...使用方法:解压翻译后的API文档,用浏览器打开“index.html”文件,即可纵览文档内容。 人性化翻译,文档中的代码和结构保持不变,注释和说明精准翻译,请放心使用。

    google开源项目guava.jar包

    Guava还提供了 Predicates(谓词)、Functions(函数) 和 Combinators (组合器)等函数式编程工具,以及Optional类,用于表示可能为空的值,增强了代码的健壮性。 总的来说,“guava.jar”是Google为Java开发者...

    guava-23.0-API文档-中文版.zip

    赠送jar包:guava-23.0.jar;...使用方法:解压翻译后的API文档,用浏览器打开“index.html”文件,即可纵览文档内容。 人性化翻译,文档中的代码和结构保持不变,注释和说明精准翻译,请放心使用。

    guava-20.0-API文档-中文版.zip

    赠送jar包:guava-20.0.jar;...使用方法:解压翻译后的API文档,用浏览器打开“index.html”文件,即可纵览文档内容。 人性化翻译,文档中的代码和结构保持不变,注释和说明精准翻译,请放心使用。

    Guava使用培训教程

    通过上述介绍可以看出,Guava库为Java开发提供了强大的工具支持,尤其是在字符串处理方面,如 `Joiner`、`Splitter` 和 `CharMatcher` 等工具类,它们不仅能提升代码的可读性和维护性,还能有效提高程序的运行效率。...

    guava-17.0-API文档-中文版.zip

    赠送jar包:guava-17.0.jar;...使用方法:解压翻译后的API文档,用浏览器打开“index.html”文件,即可纵览文档内容。 人性化翻译,文档中的代码和结构保持不变,注释和说明精准翻译,请放心使用。

    guava-19.0 jar和sources

    这个版本的Guava提供了如ListMultimap、Table、Optional等数据结构,以及Preconditions、CheckState等代码质量检查工具,还有诸如FluentIterable、Iterables、Collections2等增强的集合操作方法。此外,它还包含了对...

    guava-21.0-rc2 、guava-21.0-rc2-javadoc 、guava-21.0-rc2-sources

    这个文件包含了Guava库中所有公共类和方法的详细说明,是开发者理解和使用Guava API的重要参考。通过阅读Javadoc,开发者可以快速了解每个类的功能、方法的参数和返回值,以及可能抛出的异常等信息。 3. **guava-...

    guava-23.0.zip guava.jar guava

    在使用Guava时,需要将guava.jar添加到项目的类路径中,以便能够使用其中的类和方法。如果使用的是Maven或Gradle,可以通过添加对应的依赖来引入Guava库。 总的来说,Guava是一个非常强大的Java库,它提供了大量...

    guava-r07.zip

    字符串处理是Guava的另一个亮点,它提供了Joiner和Splitter工具类,简化了字符串连接和分割操作。此外,还有CharMatcher,用于匹配字符序列,以及Strings类,包含大量静态方法来处理和验证字符串。 Guava对原生类型...

    guava-11.0.2-API文档-中文版.zip

    赠送jar包:guava-11.0.2.jar;...使用方法:解压翻译后的API文档,用浏览器打开“index.html”文件,即可纵览文档内容。 人性化翻译,文档中的代码和结构保持不变,注释和说明精准翻译,请放心使用。

    guava-30.0-jre-API文档-中文版.zip

    赠送jar包:guava-30.0-jre.jar;...使用方法:解压翻译后的API文档,用浏览器打开“index.html”文件,即可纵览文档内容。 人性化翻译,文档中的代码和结构保持不变,注释和说明精准翻译,请放心使用。

    google guava 中文教程

    本教程将深入探讨Guava库中的核心特性和使用方法。 一、集合框架扩展 Guava提供了对Java集合框架的增强,包括新的集合类型如Multiset(多集)、Multimap(多映射)和Immutable集合(不可变集合)。这些集合类型...

Global site tag (gtag.js) - Google Analytics