002-guava String 操作
Posted bjlhx
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了002-guava String 操作相关的知识,希望对你有一定的参考价值。
一、概述
提供了字符串基本操作
二、使用
2.1、字符串拼接
字符串的拼接采用的是Guava中的Joiner类中的方法
@Test public void testJdkJoin() List<String> strList = Lists.newArrayList("1", "2", null, "3", "4"); //字符串拼接,无法跳过空字符串 String str = String.join(",", strList); Assert.assertEquals("1,2,3,4", str); @Test public void testGuavaJoin() List<String> strList = Lists.newArrayList("1", "2", null, "3", "4"); //字符串拼接,跳过空字符串 String str = Joiner.on(",").skipNulls().join(strList); Assert.assertEquals("1,2,3,4", str);
2.2、字符串分割
@Test public void testJdkSplit() String str = "1,2, 3 ,,4,"; //trimResults():去除空格,omitEmptyStrings():删除空数组 String[] strList = str.split(","); // List<String> strList = Splitter.on(",").trimResults().omitEmptyStrings().splitToList(str); for (int i = 0; i < strList.length; i++) String s = strList[i]; System.out.println(s); Assert.assertEquals(4,strList.length); @Test public void testGuavaSplit() String str = "1,2, 3 ,,4,"; //trimResults():去除空格,omitEmptyStrings():删除空数组 List<String> strList = Splitter.on(",").trimResults().omitEmptyStrings().splitToList(str); strList.forEach(s -> System.out.println(s)); Assert.assertEquals(4,strList.size());
2.3、字符串查找【使用jdk中方法】
@Test public void testSearch() String str = "abcdef"; //包含字符串cd Assert.assertEquals(true,str.contains("cd")); //查找以abc开头的字符串 Assert.assertEquals(true,str.startsWith("abc")); //查找以def结尾的字符串 Assert.assertEquals(true,str.endsWith("def"));
2.4、字符串变换
@Test public void testConversion() String str = "abcdef"; String newStr = str.replace("bcde","hello"); System.out.println(newStr); Assert.assertEquals("ahellof",newStr); String str2 = "ABC abc 123"; //打印数字 System.out.println(CharMatcher.digit().retainFrom(str2)); //打印小写字母 System.out.println(CharMatcher.javaLowerCase().retainFrom(str2)); //打印大写字母 System.out.println(CharMatcher.javaUpperCase().retainFrom(str2)); //打印所有字母 System.out.println(CharMatcher.javaLetter().retainFrom(str2)); //将多余的空格替换成一个空格 System.out.println(CharMatcher.whitespace().trimAndCollapseFrom(str2,‘ ‘)); //统计出现的字母 System.out.println(String.valueOf(CharMatcher.javaLetter().countIn(str2)));
输出
ahellof 123 abc ABC ABCabc ABC abc 123 6
发的
以上是关于002-guava String 操作的主要内容,如果未能解决你的问题,请参考以下文章