String字符串处理系列和json转化
通过guava处理字符串
1、pom
<dependency>
<groupId>com.google.guava</groupId>
<artifactId>guava</artifactId>
<version>23.0</version>
</dependency>
2、字符串拼接
// 将list 用‘;’拼接,并跳过 null
final List<String> stringArrayList = Lists.newArrayList("aadf", "ldksf", "", "kjslfu", "ekfkkld");
final String join = Joiner.on(";").skipNulls().join(stringArrayList);
System.out.println("join = " + join); // join = aadf;ldksf;kjslfu;ekfkkld
final String join1 = Joiner.on(" - ").join("adfs", 'd', 1233, 90, "wew");
System.out.println("join1 = " + join1); // join1 = adfs - d - 1233 - 90 - wew
3、字符串拆分
String a = "aadf;ldksf;;kjslfu;ekfkkld";
// 通过';'切割(支持正则),忽略空出字符串,结果字符串前后空格删除
final List<String> strings = Splitter.on(";").omitEmptyStrings().trimResults().splitToList(a);
System.out.println("strings = " + strings);
4、CharMatcher
String a = "kjluwefjo23749823ljk12340325132lk1r2137";
final String s = CharMatcher.javaDigit().retainFrom(a);
System.out.println("s = " + s); // 237498231234032513212137
5、CaseFormat (未测)
LOWER_CAMEL lowerCamel
LOWER_HYPHEN lower-hyphen
LOWER_UNDERSCORE lower_underscore
UPPER_CAMEL UpperCamel
UPPER_UNDERSCORE UPPER_UNDERSCORE
6、字符串格式化
String lkl = MessageFormat.format("aaa{0}ccc{1}", "bbb","ddd"); // aaabbbcccddd
字符串格式化工具
pom
<dependency>
<groupId>org.apache.commons</groupId>
<artifactId>commons-lang3</artifactId>
<version>3.4</version>
</dependency>
代码
Map<String, String> map = new HashMap<>();
map.put("a", "kkkkkk");
String str = "kljsfue kdjsfu ${a}";
final StrSubstitutor strSubstitutor = new StrSubstitutor(map);
final String replace = strSubstitutor.replace(str);
System.out.println("replace = " + replace); // replace = kljsfue kdjsfu kkkkkk
通过fastjson处理字符串
1、pom
<dependency>
<groupId>com.alibaba</groupId>
<artifactId>fastjson</artifactId>
<version>1.2.69</version>
</dependency>
2、其它类型转json
// list转json
List<String> stringArrayList = Lists.newArrayList("aadf", "ldksf", "", "kjslfu", "ekfkkld");
String s = JSONObject.toJSONString(stringArrayList); // ["aadf","ldksf","","kjslfu","ekfkkld"]
// 对象转json
Answer answer = new Answer();
answer.setUserId("kk");
answer.setId(12);
String s1 = JSONObject.toJSONString(answer); //{"id":12,"userId":"kk"}
3、json转其它类型
// json 转map
String mapJson = "{\"id\":12,\"userId\":\"kk\"}";
final Map<String,String> hashMap = JSONObject.parseObject(mapJson, HashMap.class); // {id=12, userId=kk}
// json 转实体类
String json = "{\"id\":12,\"userId\":\"kk\"}";
final Answer answer = JSONObject.parseObject(json, Answer.class); // {id=12, subjectId='null', groupName='null', userAnswer='null', userId='kk'}

浙公网安备 33010602011771号