字符串处理工具Guava使用总结

匿名 (未验证) 提交于 2019-12-02 23:42:01

字符串处理工具Guava使用总结

1:maven依赖:

      <dependency>             <groupId>com.google.guava</groupId>             <artifactId>guava</artifactId>             <version>18.0</version>         </dependency>

一、Joiner

根据给定的分隔符把字符串连接到一起

public class JoinerTest {      public static void main(String args[]){       //1、将list字符串集合,以,形式转为字符串         List<String> list =new ArrayList<String>();         list.add("xx");         list.add("zz");         list.add("dd");          //Joiner.on(",")获得Joiner实例对象         Joiner joiner =  Joiner.on(",");         //joiner.join(list)传入操作的集合,并转成字符串格式         System.out.println(joiner.join(list));         //输出结果:xx,zz,dd       //2、将Iterator<T>列表,转为字符串         Iterator<String> it=list.iterator();         String  str=Joiner.on("|").join(it);         System.out.println(str);         //输出结果:xx|zz|dd       //3、连接多个字符串         String str1=Joiner.on(",").join("小小","爸爸","妈妈","爷爷","奶奶");         System.out.println(str1);         //输出:小小,爸爸,妈妈,爷爷,奶奶       //4、连接字符串与列表         StringBuilder builder=new StringBuilder("小小最乖");         //返回StringBuilder类型         StringBuilder str2=Joiner.on(",").appendTo(builder,list);         System.out.println(str2);         //输出:小小最乖xx,zz,dd       //5、跳过null值连接         list.add(null);         list.add("小小");         //skipNulls()代表去除null         String str3=Joiner.on(",").skipNulls().join(list);         System.out.println(str3);         //输出:xx,zz,dd,小小       //6、替换null值进行连接         String str4=Joiner.on(",").useForNull("空").join(list);         System.out.println(str4);         //输出:xx,zz,dd,空,小小       //7、Map的键值对打印出来         Map<String, String> map = new HashMap<>();         map.put("key1", "value1");         map.put("key2", "value2");         map.put("key3", "value3");         Joiner.MapJoiner mapJoiner = Joiner.on(",").withKeyValueSeparator("=");         System.out.println(mapJoiner.join(map));         //输出:key1=value1,key2=value2,key3=value3           //8、一步将字符串转为List<Long>集合(前面先转为list<String>,后面用java8特性将List<String>转为List<Long>)     List<Long> list=Splitter.on("#").splitToList("111#222#333").stream().mapToLong(str->Long.parseLong(str)).boxed().distinct().collect(Collectors.toList()); } }

二、Splitter

public class SplitterTest {      public static void main(String args[]){       //1、拆分字符串为List集合         String str="小小,妈妈,爸爸,爷爷,奶奶";         Splitter splitter =Splitter.on(",");         List<String> list=splitter.splitToList(str);         System.out.println(list);         //输出:[小小, 妈妈, 爸爸, 爷爷, 奶奶]       //2、忽略空字符         String str1="a,b,c,d,,f,g";         //omitEmptyStrings()代表去除空字符串         List<String> list1=Splitter.on(",").omitEmptyStrings().splitToList(str1);         System.out.println(list1);         //输出:[a, b, c, d, f, g]       //3、忽略空字符且去除字符串前后空格         String str2="a,b,c,d,,f,  g  ";         List<String> list2=Splitter.on(",").omitEmptyStrings().trimResults().splitToList(str2);         System.out.println(list2);         //输出:[a, b, c, d, f, g]     } }

三、Strings

public class StringsTest {      public static void main(String args[]){       //1、补右全(Strings.padEnd方法)         String a="12345";         String b=Strings.padEnd(a, 10, 'x');         System.out.println(b);         //输出:12345xxxxx       //2、补左全(Strings.padStart)         String c=Strings.padStart(a, 10, 'x');         System.out.println(c);         //输出:xxxxx12345       //3、校验空值和null         String d="";         String f=null;         boolean e=Strings.isNullOrEmpty(d);         boolean h=Strings.isNullOrEmpty(f);         System.out.println(e);         System.out.println(h);         //输出:true,true       //4、如果为null 转为""         String m=null;         String n=Strings.nullToEmpty(m);         System.out.println(n);         //输出:       //5、如果为"" 转为null         String j="";         String k=Strings.emptyToNull(j);         System.out.println(k);         //输出:null       //6、重复字符串(Strings.repeat)         String o="123";         String p=Strings.repeat(o, 3);         System.out.println(p);         //输出:123123123       //7、获取a,b左公共部分字符串(左边第一个公共部分)         String r="abcdsfsfs";         String s="accdc3sfsd";         String t=Strings.commonPrefix(r, s);         System.out.println(t);         //输出:a      //8、获取a,b右公共部分字符串         String w="faaxyz";         String x="fwefxyz";         String z=Strings.commonSuffix(w, x);         System.out.println(z);         //输出:xyz     } }

标签
易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!