基于guava转换String,List/Map
Joiner用于List、Map转String
Splitter用于String转List、Map
本文只列出简单用法,Joiner、Splitter中还有很多包括去重复等操作
List–>String
List<String> names = Lists.newArrayList("John", "Jane", "Adam", "Tom");
String result = Joiner.on(",").join(names);
assertEquals(result, "John,Jane,Adam,Tom");
String–>List
String input = "apple - banana - orange";
List<String> result = Splitter.on("-").trimResults().splitToList(input);
Map–>String
String to List/Map Splitter
List/Map to String Joiner
Map<String, Integer> salary = Maps.newHashMap();
salary.put("John", 1000);
salary.put("Jane", 1500);
String result = Joiner.on(" , ").withKeyValueSeparator(" = ")
.join(salary);
String–>Map
String input = "John=first,Adam=second";
Map<String, String> result = Splitter.on(",")
.withKeyValueSeparator("=")
.split(input);
assertEquals("first", result.get("John"));
assertEquals("second", result.get("Adam"));