public class Splitter
extends java.lang.Object
| 限定符和类型 | 类和说明 |
|---|---|
static class |
Splitter.MapSplitter |
| 限定符和类型 | 方法和说明 |
|---|---|
Splitter |
limit(int limit)
拆分后集合最大保留长度, 返回的集合
List.size()可能小于等于limit但是不会大于limit
String str1 = "1,2,3,4,5,";
List<String> list1 = Splitter.on(',').limit(3).splitToList(str1);
// 结果: ["1","2","3"]
String str2 = "1,2";
List<String> list1 = Splitter.on(',').limit(5).splitToList(str1);
// 结果: ["1","2"]
注意: 如果List.size()已达到limit限制, 剩余字符串将不在加入集合中 |
static Splitter |
on(char separator)
返回一个以指定字符的分割器
|
static Splitter |
on(java.lang.String separator)
返回一个以指定字符的分割器
|
java.lang.String[] |
split(java.lang.CharSequence str)
字符串分割
样例:
Splitter.on(',').split("1,2,3");
结果:["1","2","3"]
|
java.util.List<java.lang.String> |
splitToList(java.lang.CharSequence str)
字符串分割
样例: Splitter.on(',').splitToList("1,2,3"); 结果:["1","2","3"] |
java.util.stream.Stream<java.lang.String> |
splitToStream(java.lang.CharSequence str)
字符串分割
样例:
Splitter.on(",").split("1,2,3");
结果:["1","2","3"]
|
Splitter.MapSplitter |
withKeyValueSeparator(char separator)
获取一个MapSplitter分割器,将指定字符串分割为Map
样例:
String str = "page=1&pageSize=10&name=zhangsan&age=18";
Map<String, String> split = Splitter.on("&").withKeyValueSeparator("=").split(str);
结果:{"page":"1","pageSize":"10","name":"zhangsan","age":"18"}
|
Splitter.MapSplitter |
withKeyValueSeparator(java.lang.String separator)
获取一个MapSplitter分割器,将指定字符串分割为Map
样例:
String str = "page=1&pageSize=10&name=zhangsan&age=18";
Map<String, String> split = Splitter.on("&").withKeyValueSeparator("=").split(str);
结果:{"page":"1","pageSize":"10","name":"zhangsan","age":"18"}
|
public static Splitter on(java.lang.String separator)
separator - 指定分割字符串public static Splitter on(char separator)
separator - 指定分割字符public final Splitter limit(int limit)
List.size()可能小于等于limit但是不会大于limit
String str1 = "1,2,3,4,5,";
List<String> list1 = Splitter.on(',').limit(3).splitToList(str1);
// 结果: ["1","2","3"]
String str2 = "1,2";
List<String> list1 = Splitter.on(',').limit(5).splitToList(str1);
// 结果: ["1","2"]
注意: 如果List.size()已达到limit限制, 剩余字符串将不在加入集合中limit - 拆分后集合最大长度, 必须大于0java.lang.UnsupportedOperationException - limit小于或等于0时抛出,或者已经设置过limit值再次设置会抛出异常public final java.util.List<java.lang.String> splitToList(java.lang.CharSequence str)
Splitter.on(',').splitToList("1,2,3"); str - 待分割字符串ArrayList集合public final java.lang.String[] split(java.lang.CharSequence str)
str - 待分割字符串public final java.util.stream.Stream<java.lang.String> splitToStream(java.lang.CharSequence str)
str - 待分割字符串public final Splitter.MapSplitter withKeyValueSeparator(java.lang.String separator)
String str = "page=1&pageSize=10&name=zhangsan&age=18";
Map<String, String> split = Splitter.on("&").withKeyValueSeparator("=").split(str);
结果:{"page":"1","pageSize":"10","name":"zhangsan","age":"18"}
separator - 第二次拆分的标记字符串,对应上面样例代码中的=字符public final Splitter.MapSplitter withKeyValueSeparator(char separator)
String str = "page=1&pageSize=10&name=zhangsan&age=18";
Map<String, String> split = Splitter.on("&").withKeyValueSeparator("=").split(str);
结果:{"page":"1","pageSize":"10","name":"zhangsan","age":"18"}
separator - 第二次拆分的标记字符