发布日期:2018-03-26
Java:将List<String>转换为String+ 查看更多
Java:将List<String>转换为String
+ 查看更多
发布日期:2018-03-08 18:01
分类:JAVA
浏览次数:172
JavaScript有Array.join()
js>["Bill","Bob","Steve"].join(" and ") Bill and Bob and SteveJava有这样的东西吗?我知道我可以用StringBuilder自己粗略地实现:
static public String join(Listeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeelist, String conjunction) { StringBuilder sb = new StringBuilder(); boolean first = true; for (String item : list) { if (first) first = false; else sb.append(conjunction); sb.append(item); } return sb.toString(); }
List如果你的Collection对象里面包含的是其他类型而不是String类型的话你可以使用Stream API以及joining Collector:list = Arrays.asList("foo", "bar", "baz"); String joined = String.join(" and ", list); // "foo and bar and baz"
ListStringJoiner类可能也有用。list = Arrays.asList( new Person("John", "Smith"), new Person("Anna", "Martinez"), new Person("Paul", "Watson ") ); String joinedFirstNames = list.stream() .map(Person::getFirstName) .collect(Collectors.joining(", ")); // "John, Anna, Paul"