Class Joiner
java.lang.Object
com.google.common.base.Joiner
An object which joins pieces of text (specified as an array, 
 
 
Iterable, varargs or even a
 Map) with a separator. It either appends the results to an Appendable or returns
 them as a String. Example:
 
Joiner joiner = Joiner.on("; ").skipNulls();
 . . .
return joiner.join("Harry", null, "Ron", "Hermione");
This returns the string "Harry; Ron; Hermione". Note that all input elements are
 converted to strings using Object.toString() before being appended.
 
If neither skipNulls() nor useForNull(String) is specified, the joining
 methods will throw NullPointerException if any given element is null.
 
Warning: joiner instances are always immutable; a configuration method such as 
 useForNull has no effect on the instance it is invoked on! You must store and use the new joiner
 instance returned by the method. This makes joiners thread-safe, and safe to store as 
 static final constants.
 
// Bad! Do not do this!
Joiner joiner = Joiner.on(',');
joiner.skipNulls(); // does nothing!
return joiner.join("wrong", null, "wrong");
See the Guava User Guide article on Joiner.
- Since:
- 2.0
- Author:
- Kevin Bourrillion
- 
Nested Class SummaryNested ClassesModifier and TypeClassDescriptionstatic final classAn object that joins map entries in the same manner asJoinerjoins iterables and arrays.
- 
Method SummaryModifier and TypeMethodDescriptionfinal <A extends Appendable>
 AAppends the string representation of each ofparts, using the previously configured separator between each, toappendable.final <A extends Appendable>
 AAppends toappendablethe string representation of each of the remaining arguments.<A extends Appendable>
 AAppends the string representation of each ofparts, using the previously configured separator between each, toappendable.<A extends Appendable>
 AAppends the string representation of each ofparts, using the previously configured separator between each, toappendable.final StringBuilderappendTo(StringBuilder builder, @Nullable Object[] parts) Appends the string representation of each ofparts, using the previously configured separator between each, tobuilder.final StringBuilderappendTo(StringBuilder builder, @Nullable Object first, @Nullable Object second, @Nullable Object... rest) Appends tobuilderthe string representation of each of the remaining arguments.final StringBuilderappendTo(StringBuilder builder, Iterable<?> parts) Appends the string representation of each ofparts, using the previously configured separator between each, tobuilder.final StringBuilderappendTo(StringBuilder builder, Iterator<?> parts) Appends the string representation of each ofparts, using the previously configured separator between each, tobuilder.final StringReturns a string containing the string representation of each ofparts, using the previously configured separator between each.final StringReturns a string containing the string representation of each argument, using the previously configured separator between each.Returns a string containing the string representation of each ofparts, using the previously configured separator between each.final StringReturns a string containing the string representation of each ofparts, using the previously configured separator between each.static Joineron(char separator) Returns a joiner which automatically placesseparatorbetween consecutive elements.static JoinerReturns a joiner which automatically placesseparatorbetween consecutive elements.Returns a joiner with the same behavior as this joiner, except automatically skipping over any provided null elements.useForNull(String nullText) Returns a joiner with the same behavior as this one, except automatically substitutingnullTextfor any provided null elements.withKeyValueSeparator(char keyValueSeparator) Returns aMapJoinerusing the given key-value separator, and the same configuration as thisJoinerotherwise.withKeyValueSeparator(String keyValueSeparator) Returns aMapJoinerusing the given key-value separator, and the same configuration as thisJoinerotherwise.
- 
Method Details- 
on
- 
onReturns a joiner which automatically placesseparatorbetween consecutive elements.
- 
appendTo@CanIgnoreReturnValue public <A extends Appendable> A appendTo(A appendable, Iterable<?> parts) throws IOException Appends the string representation of each ofparts, using the previously configured separator between each, toappendable.- Throws:
- IOException
 
- 
appendTo@CanIgnoreReturnValue public <A extends Appendable> A appendTo(A appendable, Iterator<?> parts) throws IOException Appends the string representation of each ofparts, using the previously configured separator between each, toappendable.- Throws:
- IOException
- Since:
- 11.0
 
- 
appendTo@CanIgnoreReturnValue public final <A extends Appendable> A appendTo(A appendable, @Nullable Object[] parts) throws IOException Appends the string representation of each ofparts, using the previously configured separator between each, toappendable.- Throws:
- IOException
 
- 
appendTo@CanIgnoreReturnValue public final <A extends Appendable> A appendTo(A appendable, @Nullable Object first, @Nullable Object second, @Nullable Object... rest) throws IOException Appends toappendablethe string representation of each of the remaining arguments.- Throws:
- IOException
 
- 
appendToAppends the string representation of each ofparts, using the previously configured separator between each, tobuilder. Identical toappendTo(Appendable, Iterable), except that it does not throwIOException.
- 
appendToAppends the string representation of each ofparts, using the previously configured separator between each, tobuilder. Identical toappendTo(Appendable, Iterable), except that it does not throwIOException.- Since:
- 11.0
 
- 
appendTo@CanIgnoreReturnValue public final StringBuilder appendTo(StringBuilder builder, @Nullable Object[] parts) Appends the string representation of each ofparts, using the previously configured separator between each, tobuilder. Identical toappendTo(Appendable, Iterable), except that it does not throwIOException.
- 
appendTo@CanIgnoreReturnValue public final StringBuilder appendTo(StringBuilder builder, @Nullable Object first, @Nullable Object second, @Nullable Object... rest) Appends tobuilderthe string representation of each of the remaining arguments. Identical toappendTo(Appendable, Object, Object, Object...), except that it does not throwIOException.
- 
join
- 
join
- 
join
- 
join
- 
useForNull
- 
skipNullsReturns a joiner with the same behavior as this joiner, except automatically skipping over any provided null elements.
- 
withKeyValueSeparatorReturns aMapJoinerusing the given key-value separator, and the same configuration as thisJoinerotherwise.- Since:
- 20.0
 
- 
withKeyValueSeparatorReturns aMapJoinerusing the given key-value separator, and the same configuration as thisJoinerotherwise.
 
-