In a previous post, I wrote about how you can use Guava's Joiner to easily convert an Iterable into a String, so you no longer have to iterate over it and build the String manually.
Java 8 introduces the StringJoiner, which can be used to join a Stream using Collectors.joining. For example:
Arrays.asList("apple", "banana", "cherry")
.stream()
.collect(Collectors.joining(", ");
To skip nulls and empty strings, you can filter the stream first:
Arrays.asList("apple", "banana", null, "", "cherry")
.stream()
.filter(s -> s != null && !s.isEmpty())
.collect(Collectors.joining(", ");
I'd still use Guava's Joiner for lists though.
No comments:
Post a Comment
Note: Only a member of this blog may post a comment.