【发布时间】:2011-04-30 15:04:08
【问题描述】:
有没有像join这样的函数,将List的数据作为字符串返回 所有元素,由提供的分隔符连接?
List<String> join; ....
String join = list.join('+");
// join == "Elem 1+Elem 2";
还是必须使用迭代器手动粘合元素?
【问题讨论】:
标签: java
有没有像join这样的函数,将List的数据作为字符串返回 所有元素,由提供的分隔符连接?
List<String> join; ....
String join = list.join('+");
// join == "Elem 1+Elem 2";
还是必须使用迭代器手动粘合元素?
【问题讨论】:
标签: java
你可以使用Apache Commons Lang的StringUtils.join()方法:
String join = StringUtils.join(joinList, "+");
【讨论】:
Apache Commons Lang 提供了许多有用的方法,可以处理null 的值...
或来自 Google Guava 的 Joiner。
Joiner joiner = Joiner.on("+");
String join = joiner.join(joinList);
【讨论】:
Java 8...
String joined = String.join("+", list);
【讨论】:
String.join() 只接受 Iterable<CharSequence>(可变参数除外),而 Guava 的 Joiner.join() 接受 Iterable<?>、Iterator<?>、可变参数...
String joined = iterableOfNonCharSequence.stream().map(object -> object.methodToGetStringValue()).collect(Collectors.joining(","));如果您只想记录元素列表,可以使用 list toString() 方法,该方法已经连接了所有列表元素。
【讨论】:
如果您使用的是 Spring,您可以使用 StringUtils.join() 方法,该方法还允许您指定前缀和后缀。
String s = StringUtils.collectionToDelimitedString(fieldRoles.keySet(),
"\n", "<value>", "</value>");
【讨论】:
您可以使用:org.springframework.util.StringUtils;
String stringDelimitedByComma = StringUtils.collectionToCommaDelimitedString(myList);
【讨论】: