编程技术分享平台

网站首页 > 技术教程 正文

Guava工具之Splitter类七大常用方法

xnh888 2024-11-20 23:23:45 技术教程 15 ℃ 0 评论

1 splitToList方法

作用:将一个字符串按照指定的字符进行分隔,变成列表的形式。

// 代码
@Test
public void splitToList(){
  List<String> list = Splitter.on("|").splitToList("hello|world");
  log.info(list);
}
// 输出
INFO - [hello, world]

2 omitEmptyStrings方法

作用:将一个字符串按照指定的字符进行分隔,忽略掉空字符串的内容,再变成列表的形式。

// 代码
@Test
public void omitEmptyStrings(){
  List<String> list = Splitter.on("|").omitEmptyStrings().splitToList("hello|world||");
  log.info(list);
}
// 输出
INFO - [hello, world]

3 trimResults方法

作用:将一个字符串按照指定的字符进行分隔,去掉字符串左右两边的空格,然后忽略掉空字符串的内容,再变成列表的形式。

// 代码
@Test
public void trimResults(){
  List<String> list = Splitter.on("|").trimResults().omitEmptyStrings().splitToList("hello|world| |");
  log.info(list);
}
// 输出
INFO - [hello, world]

4 fixedLength方法

作用:按固定长度分隔字符串,最后不足指定长度的字符串也作为列表中的一员。

// 代码
@Test
public void fixedLength(){
  List<String> list = Splitter.fixedLength(4).splitToList("aaaabbbbccccdd");
  log.info(list);
}
// 输出
INFO - [aaaa, bbbb, cccc, dd]

5 limit方法

作用:分隔出的字符串列表限定最大个数。

// 代码
@Test
public void limit(){
  List<String> list = Splitter.on("|").limit(3).splitToList("hello|面试题解析|真好|谢谢");
  log.info(list);
}
// 输出
INFO - [hello, 面试题解析, 真好|谢谢]

6 limit方法

作用:按照指定的正则表达式分隔字符串,下面提供两种方式。

// 代码
@Test
public void onPattern(){
  String helloWorld = "hello|world";
  List<String> list1 = Splitter.onPattern("\\|").splitToList(helloWorld);
  List<String> list2 = Splitter.on(Pattern.compile("\\|")).splitToList(helloWorld);
  log.info(list1);
  log.info(list2);
}
// 输出
INFO - [hello, world]
INFO - [hello, world]

7 withKeyValueSeparator方法

作用:将字符串转成map的形式。

// 代码
@Test
public void withKeyValueSeparator(){
  String helloWorld = "hello=HELLO|world=WORLD";
  Map<String, String> map = Splitter.onPattern("\\|").withKeyValueSeparator("=").split(helloWorld);
  log.info(map);
}
// 输出
INFO - {hello=HELLO, world=WORLD}

总结

Guava的Splitter工具类用的还挺多的,大家可以调下代码试试看,有什么不清楚,欢迎留言,一起沟通讨论。

【温馨提示】

点赞+收藏文章,关注我并私信回复【面试题解析】,即可100%免费领取楼主的所有面试题资料!

Tags:

本文暂时没有评论,来添加一个吧(●'◡'●)

欢迎 发表评论:

最近发表
标签列表