public final class TextJoiner
extends java.lang.Object
| Modifier and Type | Field and Description |
|---|---|
static java.lang.String |
DEFAULT_SEPARATOR
The default separator for String joining and splitting: ", "
|
| Modifier and Type | Method and Description |
|---|---|
void |
appendTo(java.lang.StringBuilder sb,
java.util.Collection<?> collection) |
static TextJoiner |
create()
Creates a new fluent
TextJoiner instance with default settings. |
TextJoiner |
escape(boolean escape)
Configures whether escaping is enabled (default is
true). |
static java.lang.String |
escape(java.lang.String str,
java.lang.String charsToEscape)
Escapes backslashes and any character present in
charsToEscape
by prefixing them with a single backslash ('\'). |
java.lang.String |
join(java.util.Collection<?> col) |
java.lang.String |
join(java.lang.Object[] array) |
java.lang.String |
join(java.lang.String[] array) |
static java.lang.String |
joinAll(java.util.Collection<?> col)
Joins collection elements using default delimiter (", ").
|
static java.lang.String |
joinAll(java.lang.Object[] array)
Joins array elements using default delimiter (", ").
|
static java.lang.String |
joinAll(java.lang.String[] array)
Joins array elements using default delimiter (", ").
|
static java.lang.String |
joinLastDifferent(java.lang.String[] strs,
java.lang.String lastSep,
java.lang.String sep)
Joins elements for natural language output where the final separator differs.
|
java.lang.String |
joinTwo(java.lang.String s1,
java.lang.String s2)
Specialized joiner for 2 strings adhering to the contract:
returns
null if both inputs are null. |
static TextJoiner |
on(java.lang.String separator)
Creates a builder preconfigured with a specific delimiter to save on boilerplate code.
|
TextJoiner |
removeDuplicates(boolean removeDuplicates)
Deduplicates elements while preserving insertion order (first-seen wins).
|
TextJoiner |
removeEmptyStrings(boolean removeEmptyStrings)
Drops empty, whitespace-only, and null strings during iteration (equivalent to
StringUtils.isBlank). |
TextJoiner |
removeNulls(boolean removeNulls)
Drops literal
null values during iteration. |
TextJoiner |
separateBy(java.lang.String separator)
Convenience alias for
withSeparator(String). |
TextJoiner |
surroundWith(java.lang.String surround)
Surrounds each element by prepending AND appending this exact string.
|
static java.lang.String |
unescape(java.lang.String str)
Unescapes strings that were escaped using
escape(String, String)
without regex overhead. |
TextJoiner |
withDefault(java.lang.String defaultString)
Fallback string returned when the input collection or array is null or empty.
|
TextJoiner |
withEscaper(java.util.function.BiFunction<java.lang.String,java.lang.String,java.lang.String> escaper)
Supplies the custom escaping function
(value, separator) -> escapedValue. |
TextJoiner |
withPrefix(java.lang.String prefix)
Prepends this string once at the beginning of the rendered output.
|
TextJoiner |
withSeparator(java.lang.String separator)
Sets the delimiter inserted between elements.
|
public static final java.lang.String DEFAULT_SEPARATOR
public static java.lang.String escape(java.lang.String str,
java.lang.String charsToEscape)
charsToEscape
by prefixing them with a single backslash ('\').str - the string to escapecharsToEscape - characters that need escaping (e.g. delimiters)java.lang.NullPointerException - if str is null.public static java.lang.String unescape(java.lang.String str)
escape(String, String)
without regex overhead.str - string to unescapejava.lang.NullPointerException - if str is null.public static TextJoiner create()
TextJoiner instance with default settings.public static TextJoiner on(java.lang.String separator)
TextJoiner.create().withSeparator(separator).public static java.lang.String joinAll(java.util.Collection<?> col)
public static java.lang.String joinAll(java.lang.Object[] array)
public static java.lang.String joinAll(java.lang.String[] array)
public TextJoiner withSeparator(java.lang.String separator)
public TextJoiner separateBy(java.lang.String separator)
withSeparator(String).public TextJoiner withDefault(java.lang.String defaultString)
public TextJoiner surroundWith(java.lang.String surround)
public TextJoiner withPrefix(java.lang.String prefix)
public TextJoiner escape(boolean escape)
true).public TextJoiner withEscaper(java.util.function.BiFunction<java.lang.String,java.lang.String,java.lang.String> escaper)
(value, separator) -> escapedValue.public TextJoiner removeNulls(boolean removeNulls)
null values during iteration.public TextJoiner removeEmptyStrings(boolean removeEmptyStrings)
StringUtils.isBlank).public TextJoiner removeDuplicates(boolean removeDuplicates)
public java.lang.String join(java.util.Collection<?> col)
public java.lang.String join(java.lang.Object[] array)
public java.lang.String join(java.lang.String[] array)
public java.lang.String joinTwo(java.lang.String s1,
java.lang.String s2)
null if both inputs are null.public static java.lang.String joinLastDifferent(java.lang.String[] strs,
java.lang.String lastSep,
java.lang.String sep)
["Tom", "Dick", "Harry"] -> "Tom, Dick and Harry".public void appendTo(java.lang.StringBuilder sb,
java.util.Collection<?> collection)
Copyright © 2000-2026 OAshi S.à r.l. All Rights Reserved.