一、Strings工具類
1.Strings.padEnd方法
//padEnd普全右
String a="12345";
String b=Strings.padEnd(a, 10, 'x');
System.out.println(b);
結果為:12345xxxxx
2.Strings.padStart方法
//padStart 普全左
String a="12345";
String b=Strings.padStart(a, 10, 'x');
System.out.println(b);
結果為:xxxxx12345
3.Strings.isNullOrEmpty 方法
//Strings.isNullOrEmpty 校驗空值
String a="";
boolean b=Strings.isNullOrEmpty(a);
System.out.println(b);
結果為:true
4.Strings.nullToEmpty 方法
//Strings.nullToEmpty 如果為null 轉為""
String a=null;
String b=Strings.nullToEmpty(a);
System.out.println(b);
結果為:
5.Strings.emptyToNull 方法
//Strings.emptyToNull 如果為"" 轉為null
String a="";
String b=Strings.emptyToNull(a);
System.out.println(b);
結果為:null
6.Strings.repeat 方法
//Strings.repeat 重複字符串
String a="123";
String b=Strings.repeat(a, 3);
System.out.println(b);
結果為:123123123
7.Strings.commonPrefix 方法
//Strings.commonPrefix 獲取a,b左公共部分字符串
String a="abcdsfsfs";
String b="abc3sfsd";
String c=Strings.commonPrefix(a, b);
System.out.println(c);
結果為:abc
8.Strings.commonSuffix 方法
//Strings.commonSuffix 獲取a,b右公共部分字符串
String a="faaxyz";
String b="fwefxyz";
String c=Strings.commonSuffix(a, b);
System.out.println(c);
System.out.println(c);
結果為:xyz
9.Strings.lenientFormat 方法
//Strings.lenientFormat 格式化
String s = Strings.lenientFormat("aa%sccdd", "b");
System.out.println(s);
結果為:aabccdd
二、Joiner工具類
Joiner.on(",")設置分隔符;
Joiner.skipNulls()跳過null;
Joiner.useForNull("NULL文字")這個是來替換null的文字;
System.out.println("Hello World!");
Joiner joiner1 = Joiner.on(",");
Joiner joiner2 = Joiner.on(",").skipNulls();
Joiner joiner3 = Joiner.on(",").useForNull("null文字");
System.out.println(joiner1.join("1", "2", "3"));
List<String> list =new ArrayList<String>();
list.add("xiaoming");
list.add("xiaohong");
list.add(null);
list.add("wangsan");
System.out.println(joiner2.join(list));
System.out.println(joiner3.join(list));
StringBuilder builder=new StringBuilder("標題");
System.out.println(joiner2.appendTo(builder, list));
System.out.println(joiner3.appendTo(builder, list));
MapJoiner
System.out.println("Hello World!");
// 創建MapJoiner:用逗號連接鍵值對,用冒號連接鍵和值
Joiner.MapJoiner mapJoiner = Joiner.on(",").withKeyValueSeparator(":");
Map<String, String> data = new LinkedHashMap<>();
data.put("name", "John");
data.put("age", "25");
data.put("city", "NewYork");
data.put("country", "USA");
System.out.println("原始Map: " + data);
// 轉換為字符串
String result = mapJoiner.join(data);
System.out.println("連接結果: " + result);
// 驗證往返轉換
Splitter.MapSplitter splitter = Splitter.on(",").withKeyValueSeparator(":");
Map<String, String> parsed = splitter.split(result);
System.out.println("解析回Map: " + parsed);
System.out.println("往返成功: " + data.equals(parsed));
三、Splitter工具類
Splitter.on(",")指定分隔符;
Splitter.omitEmptyStrings()省略遺漏忽略分割結果中的空字符串;
Splitter.trimResults()去除分割結果中每個字符串的前導和尾隨空白字符;
Splitter.limit()用於獲取多少個分隔值;
System.out.println("Hello World!");
Splitter splitter1 = Splitter.on(",");
Splitter splitter2 = Splitter.on(",").omitEmptyStrings();
Splitter splitter3 = Splitter.on(",").omitEmptyStrings().trimResults();
List<String> list11 = splitter1.splitToList("1,2,,3,4,5,6,7,8,9,10");
List<String> list12 = splitter1.splitToList("1,2,, 1 3,4,5,6,7,8,9,10");
List<String> list13 = splitter1.splitToList("1,2 , , 1 3 ,4 ,5,6,7,8 ,9,10");
List<String> list21 = splitter2.splitToList("1,2,,3,4,5,6,7,8,9,10");
List<String> list22 = splitter2.splitToList("1,2,, 1 3,4,5,6,7,8,9,10");
List<String> list23 = splitter2.splitToList("1,2 , , 1 3 ,4 ,5,6,7,8 ,9,10");
List<String> list31 = splitter3.splitToList("1,2,,3,4,5,6,7,8,9,10");
List<String> list32 = splitter3.splitToList("1,2,, 1 3,4,5,6,7,8,9,10");
List<String> list33 = splitter3.splitToList("1,2 , , 1 3 ,4 ,5,6,7,8 ,9,10");
System.out.println(list11);
System.out.println(list12);
System.out.println(list13);
System.out.println(list21);
System.out.println(list22);
System.out.println(list23);
System.out.println(list31);
System.out.println(list32);
System.out.println(list33);
MapSplitter
System.out.println("Hello World!");
// 創建MapSplitter:用逗號分割鍵值對,用冒號分割鍵和值
Splitter.MapSplitter mapSplitter = Splitter.on(",")
.withKeyValueSeparator(":");
String data = "name:John,age:25,city:NewYork,country:USA";
System.out.println("原始數據: " + data);
// 解析為Map
Map<String, String> result = mapSplitter.split(data);
System.out.println("解析結果: " + result);
System.out.println("Map大小: " + result.size());
// 訪問具體的值
System.out.println("姓名: " + result.get("name"));
System.out.println("年齡: " + result.get("age"));
System.out.println("城市: " + result.get("city"));
System.out.println("國家: " + result.get("country"));