Рубрики
Без рубрики

Использование StringJoiner в Java

Что такое StringJoiner? Класс StringJoiner в Java 8 является одним из новых классов, которые мы используем… Помеченный java, string.

Что такое StringJoiner?

Класс StringJoiner в Java 8 является одним из новых классов, которые мы можем найти в этой версии Java. В Java 8 было включено много новых функций, и одной из них мог бы стать этот новый класс. Для чего нужен StringJoiner? Он используется для объединения набора строк с разделителем очень простым способом.

Примером того, как использовать StringJoiner, может быть следующее:

package dev.juanc4milo;

import java.util.ArrayList;
import java.util.List;
import java.util.StringJoiner;

/**
 *
 * @author juanc4milo
 */
public class TestStringJoiner {

    public static void main(String[] args) { 
    List firstSetWords=new ArrayList<>();

    firstSetWords.add("this");
    firstSetWords.add("is");
    firstSetWords.add("a");
    firstSetWords.add("test");
    firstSetWords.add("with");
    firstSetWords.add("stringjoiner");
    firstSetWords.add("in");
    firstSetWords.add("java8");

    StringJoiner groupingFirstSetOfWords= new StringJoiner(",");

    firstSetWords.forEach((string) -> {
        groupingFirstSetOfWords.add(string);
        });

    System.out.println(groupingFirstSetOfWords.toString());
  }
}

В консоли вывода вы увидите:

Вывод: this,is,a,test,with,stringjoiner,in,java 8

StringJoiner – Строка, разделенная префиксом и суффикс

В приведенном выше примере набор строк был сгруппирован в виде одной строки, разделенной разделителем (запятой). С помощью StringJoiner его также можно инициализировать, определив префикс и суффикс. Это один символ в начале строки и еще один символ в конце строки. Для этого в классе конструктора необходимо указать, что префикс и суффикс будут.

Давайте посмотрим на это в следующих строках кода:

StringJoiner groupingFirstSetOfWords= new StringJoiner(",","[","]");

    firstSetWords.forEach((string) -> {
        groupingFirstSetOfWords.add(string);
        });

    System.out.println(groupingFirstSetOfWords.toString());

В консоли вывода вы увидите:

Вывод: [this,is,a,test,with,stringjoiner,in,java8]

Слияние Stringjoiner

Вы также можете объединить два StringJoiner, чтобы сформировать большой однострочный набор текста, используя метод merge .

Имейте в виду, что если вы используете разделители, то преобладает разделитель того, кто выполняет функцию merge :

package dev.juanc4milo;

import java.util.ArrayList;
import java.util.List;
import java.util.StringJoiner;

/**
 *
 * @author juanc4milo
 */
public class TestStringJoiner {

    public static void main(String[] args) { 
    List firstSetWords=new ArrayList<>();

    firstSetWords.add("this");
    firstSetWords.add("is");
    firstSetWords.add("a");
    firstSetWords.add("test");
    firstSetWords.add("with");
    firstSetWords.add("stringjoiner");
    firstSetWords.add("in");
    firstSetWords.add("java8");

    StringJoiner groupingFirstSetOfWords= new StringJoiner(",","[","]");

    firstSetWords.forEach((string) -> {
        groupingFirstSetOfWords.add(string);
        });

    List lastSetWords=new ArrayList<>();

    lastSetWords.add("Enjoy");
    lastSetWords.add("this");
    lastSetWords.add("blog post");

    StringJoiner groupingLastSetOfWords= new StringJoiner(",","{","}");

    lastSetWords.forEach((string) -> {
        groupingLastSetOfWords.add(string);
        });

    groupingLastSetOfWords.merge(groupingFirstSetOfWords);

    System.out.println(groupingLastSetOfWords.toString());
  }
}

В консоли вывода вы увидите:

Вывод: {Наслаждайтесь, этим, сообщением в блоге,this,is,a,test,with,stringjoiner,in,java8}

Спасибо за чтение, и давайте подключимся!

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

Другие статьи, которые могут вам понравиться…

Тебе это нравится? Ты можешь купить мне пива если ты хочешь.

Первоначально опубликовано на хуан камило.дев

Оригинал: “https://dev.to/juanc4milo/using-stringjoiner-in-java-3m0j”