Spec-Zone.ru › OpenJDK 17

Класс 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, то будет возвращена длина строкового представления (либо prefix + suffix, либо emptyValue). Значение должно быть эквивалентно toString().length().
Возвращает:
длина текущего значения StringJoiner

© 1993, 2021, 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.
https://docs.oracle.com/en/java/javase/17/docs/api/java.base/java/util/StringJoiner.html

Spec-Zone.ru

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