Spec-Zone.ru › OpenJDK 8

Класс StringJoiner

  • java.lang.Object
    • java.util.StringJoiner

public final class StringJoiner
extends Object

StringJoiner используется для построения последовательности символов, разделённых разделителем и, необязательно, начинающейся с указанного префикса и заканчивающейся указанным суффиксом.

Прежде чем добавить что-либо в StringJoiner, его метод sj.toString() по умолчанию вернёт prefix + suffix. Однако, если вызван метод setEmptyValue, вместо этого будет возвращён emptyValue, переданный в качестве параметра. Это может быть использовано, например, при создании строки, используя обозначение множества для обозначения пустого множества, т.е. "{}", где prefix — "{", suffix — "}", а в StringJoiner ничего не добавлено.

Примечание API:

Строка "[George:Sally:Fred]" может быть построена следующим образом:

StringJoiner sj = new StringJoiner(":", "[", "]");
 sj.add("George").add("Sally").add("Fred");
 String desiredString = sj.toString();

Можно использовать StringJoiner для создания отформатированного вывода из Stream, используя Collectors.joining(CharSequence). Например:

List<Integer> numbers = Arrays.asList(1, 2, 3, 4);
 String commaSeparatedNumbers = numbers.stream()
     .map(i -> i.toString())
     .collect(Collectors.joining(", "));
С:
1.8
См. также:
Collectors.joining(CharSequence), Collectors.joining(CharSequence, CharSequence, CharSequence)

Конструкторы

Конструктор и описание
StringJoiner(CharSequence delimiter)

Создаёт StringJoiner без символов, без prefix или suffix, и с копией переданного delimiter.

StringJoiner(CharSequence delimiter, CharSequence prefix, CharSequence suffix)

Создаёт StringJoiner без символов, используя копии переданных prefix, delimiter и suffix.

Методы

Модификатор и тип Метод и описание
StringJoiner add(CharSequence newElement)

Добавляет копию заданного значения CharSequence в качестве следующего элемента значения StringJoiner.

int length()

Возвращает длину строкового представления этого StringJoiner.

StringJoiner merge(StringJoiner other)

Добавляет содержимое заданного StringJoiner без префикса и суффикса в качестве следующего элемента, если оно не пусто.

StringJoiner setEmptyValue(CharSequence emptyValue)

Устанавливает последовательность символов, используемую при определении строкового представления этого StringJoiner, когда ещё не добавлено ни одного элемента, то есть когда он пуст.

String toString()

Возвращает текущее значение, состоящее из prefix, добавленных до сих пор значений, разделённых delimiter, и suffix, если не было добавлено ни одного элемента, в таком случае возвращаются prefix + suffix или emptyValue символы.

Методы, унаследованные от класса java.lang.Object

clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait

Конструкторы

StringJoiner

public StringJoiner(CharSequence delimiter)

Создаёт StringJoiner без символов, без prefix или suffix, и с копией переданного delimiter. Если в StringJoiner не добавлялись символы и вызывались методы доступа к его значению, он не будет возвращать prefix или suffix (или их свойства) в результате, если предварительно не был вызван setEmptyValue.

Параметры:
delimiter — последовательность символов, используемая между каждым элементом, добавленным к значению StringJoiner.
Исключения:
NullPointerException — если delimiter равно null.

StringJoiner

public StringJoiner(CharSequence delimiter,
                    CharSequence prefix,
                    CharSequence suffix)

Создаёт StringJoiner без символов, используя копии переданных prefix, delimiter и suffix. Если в StringJoiner не добавлялись символы и вызывались методы доступа к строковому значению, он вернёт prefix + suffix (или их свойства) в результате, если предварительно не был вызван setEmptyValue.

Параметры:
delimiter — последовательность символов, используемая между каждым элементом, добавленным к значению StringJoiner
prefix — последовательность символов, используемая в начале
suffix — последовательность символов, используемая в конце
Исключения:
NullPointerException — если prefix, delimiter, или suffix равно null.

Методы

setEmptyValue

public StringJoiner setEmptyValue(CharSequence emptyValue)

Устанавливает последовательность символов, используемую при определении строкового представления этого StringJoiner и когда ещё не добавлено ни одного элемента, то есть когда он пуст. Копия параметра emptyValue создаётся для этой цели. Обратите внимание, что как только будет вызван метод add, StringJoiner больше не считается пустым, даже если добавленный(ые) элемент(ы) соответствуют пустому String.

Параметры:
emptyValue — символы, которые должны возвращаться как значение пустого StringJoiner
Возвращает:
сам StringJoiner для возможности цепочки вызовов
Исключения:
NullPointerException — когда параметр emptyValue равен null

toString

public String toString()

Возвращает текущее значение, состоящее из prefix, добавленных до сих пор значений, разделённых delimiter, и suffix, если не было добавлено ни одного элемента, то возвращаются prefix + suffix или emptyValue символы.

Переопределяет:
toString в классе Object
Возвращает:
строковое представление этого StringJoiner

add

public StringJoiner add(CharSequence newElement)

Добавляет копию заданного значения CharSequence в качестве следующего элемента значения StringJoiner . Если newElement равно null, то "null" добавляется.

Параметры:
newElement — элемент для добавления
Возвращает:
ссылку на этот StringJoiner

merge

public StringJoiner merge(StringJoiner other)

Добавляет содержимое данного StringJoiner без префикса и суффикса в качестве следующего элемента, если оно не пусто. Если данное StringJoiner пусто, вызов не оказывает эффекта.

StringJoiner пусто, если add() никогда не вызывался и если merge() никогда не вызывался с аргументом StringJoiner непустым.

Если другое StringJoiner использует другой разделитель, то элементы из другого StringJoiner конкатенируются с этим разделителем, и результат добавляется к этому StringJoiner в качестве одного элемента.

Параметры:
other — StringJoiner , чьё содержимое должно быть слияно в этот
Возвращает:
Этот StringJoiner
Исключения:
NullPointerException — если другое StringJoiner равно null

length

public int length()

Возвращает длину строкового представления этого StringJoiner. Обратите внимание, что если не вызывались методы add, то будет возвращена длина строкового представления String (либо prefix + suffix, либо emptyValue). Значение должно быть эквивалентно toString().length().

Возвращает:
длину текущего значения StringJoiner

© 1993, 2020, Oracle and/or its affiliates. All rights reserved.
Documentation extracted from Debian's OpenJDK Development Kit package.
Licensed under the GNU General Public License, version 2, with the Classpath Exception.
Various third party code in OpenJDK is licensed under different licenses (see Debian package).
Java and OpenJDK are trademarks or registered trademarks of Oracle and/or its affiliates.

Spec-Zone.ru

Настройки Оффлайн Что нового Помощь О нас
Spec-Zone .ru
спецификации, руководства, описания, API