guava的String中的Joiner

论坛 期权论坛 编程之家     
选择匿名的用户   2021-5-28 18:52   11   0

1.Joiner用处

Joiner用来将一系列的字符串进行合并,合并之后的每个字符串之间可以用特定的分隔符,并且可以用来处理含有null的字符串的情况。

2.Jointer的常用方法

1.public static Joiner on(String separator)或者public static Joiner on(char separator);
该方法设置合并字符串之间的分隔符。
2.public Joiner skipNulls();
返回一个Joiner类型,并且能够跳过处理null的元素。
3.public (final) String join(参数)
返回一个合并之后的字符串
4.public Joiner useForNull(String nullText)
用nullText替代null元素,并返回一个Joiner类型。
5.public Joiner.MapJoiner withKeyValueSeparator(String keyValueSeparator)
用keyValueSeparator分隔符分割key和value对,并返回一个Joiner.MapJoiner类型。

3.Joiner用法实例

package string;

import java.util.Map;

import com.google.common.base.Joiner;
import com.google.common.collect.Maps;

public class Jointer {

 public static void useMethod() {
  // 将字符串数组之间用符号合并
  String[] strs = { "as", "technology", "scales", "NoC" };
  Joiner joiner = Joiner.on(",");
  System.out.println(joiner.join(strs));
  // 跳过null的合并
  String resultSkipNull = Joiner.on(".").skipNulls()
    .join("http", null, "Journal");
  System.out.println(resultSkipNull);
  // 将null替换为其他字符的合并
  // 此处,将null替换为NULL
  String resultWithNull = Joiner.on("&").useForNull("NULL")
    .join("http", null, "complete");
  System.out.println(resultWithNull);
  // Map的处理,将map中的null替换为DD,然后将key与value用符号"$"分割
  Joiner.MapJoiner map_joiner = Joiner.on(";").useForNull("DD")
    .withKeyValueSeparator("--");
  Map map = Maps.newHashMap();
  map.put("qunzer", "csdn");
  map.put(null, "test");
  map.put("NoC", "Network-on-Chip");
  String mapResult = map_joiner.join(map);
  System.out.println(mapResult);
 }

 public static void main(String[] args) {
  // TODO Auto-generated method stub
  useMethod();

 }

}

运行结果如下:
as,technology,scales,NoC
http.Journal
http&NULL&complete
DD--test;NoC--Network-on-Chip;qunzer--csdn

分享到 :
0 人收藏
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

积分:3875789
帖子:775174
精华:0
期权论坛 期权论坛
发布
内容

下载期权论坛手机APP