StringJoiner es una clase en el paquete java.util que se usa para construir una secuencia de caracteres (strings) separados por un delimitador y, opcionalmente, comenzando con un prefijo proporcionado y terminando con un sufijo dado. Aunque esto también se puede hacer con la ayuda de la clase StringBuilder para agregar un delimitador después de cada string, StringJoiner proporciona una manera fácil de hacerlo sin tener que escribir mucho código.
Constructores de la clase StringJoiner
1. StringJoiner (delimitador CharSequence): Construye un StringJoiner sin caracteres, sin prefijo o sufijo, y una copia del delimitador proporcionado.
Sintaxis:
public StringJoiner(CharSequence delimiter)
Parámetros: la secuencia de caracteres que se usará entre cada elemento agregado al valor StringJoiner
Excepción lanzada: NullPointerException si el delimitador es nulo
2. StringJoiner (delimitador CharSequence, prefijo CharSequence, sufijo CharSequence): Construye un StringJoiner sin caracteres utilizando copias del prefijo, delimitador y sufijo proporcionados. Si no se agregan caracteres al StringJoiner y se invocan los métodos que acceden al valor de la string, devolverá el prefijo + sufijo (o sus propiedades) en el resultado a menos que se haya llamado primero a setEmptyValue .
Sintaxis:
public StringJoiner(CharSequence delimiter, CharSequence prefix, CharSequence suffix)
Parámetros:
- La secuencia de caracteres que se usará entre cada elemento agregado al valor StringJoiner
- La secuencia de caracteres que se utilizará al principio.
- La secuencia de caracteres que se utilizará al final.
Excepción lanzada: NullPointerException si el prefijo, el delimitador o el sufijo es nulo.
Métodos de la clase StringJoiner
Método | Acción realizada |
---|---|
agregar() | Agrega una copia del valor CharSequence dado como el siguiente elemento del valor StringJoiner. Si newElement es nulo, se agrega «null». |
longitud() | Devuelve la longitud de la representación String de este StringJoiner. |
unir() | Agrega el contenido del StringJoiner dado sin prefijo y sufijo como el siguiente elemento si no está vacío. Si el StringJoiner dado está vacío, la llamada no tiene efecto. Supongamos que el otro StringJoiner está usando un delimitador diferente. En ese caso, los elementos del otro StringJoiner se concatenan con ese delimitador y el resultado se agrega a este StringJoiner como un solo elemento. |
Enstringr() | Devuelve el objeto String de este StringJoiner |
establecerValorVacío() | Establece la string que se usará al determinar la representación de string de este StringJoiner, y aún no se han agregado elementos; eso es cuando esta vacio |
Java
// Java program to Demonstrate Methods // of StringJoiner class // Importing required classes import java.util.ArrayList; import java.util.StringJoiner; // Main class public class GFG { // Main driver method public static void main(String[] args) { // Creating an empty ArrayList of string type ArrayList<String> al = new ArrayList<>(); // Adding elements to above List al.add("Ram"); al.add("Shyam"); al.add("Alice"); al.add("Bob"); // Creating object of class inside main() StringJoiner sj1 = new StringJoiner(","); // Using setEmptyValue() method sj1.setEmptyValue("sj1 is empty"); System.out.println(sj1); // Using add() method sj1.add(al.get(0)).add(al.get(1)); System.out.println(sj1); // Using length() method System.out.println("Length of sj1 : " + sj1.length()); StringJoiner sj2 = new StringJoiner(":"); sj2.add(al.get(2)).add(al.get(3)); // Using merge() method sj1.merge(sj2); // Using toString() method System.out.println(sj1.toString()); System.out.println("Length of new sj1 : " + sj1.length()); } }
sj1 is empty Ram,Shyam Length of sj1 : 9 Ram,Shyam,Alice:Bob Length of new sj1 : 19
Este artículo es una contribución de Gaurav Miglani . Si te gusta GeeksforGeeks y te gustaría contribuir, también puedes escribir un artículo usando write.geeksforgeeks.org o enviar tu artículo por correo a review-team@geeksforgeeks.org. Vea su artículo que aparece en la página principal de GeeksforGeeks y ayude a otros Geeks. Escriba comentarios si encuentra algo incorrecto o si desea compartir más información sobre el tema tratado anteriormente.
Publicación traducida automáticamente
Artículo escrito por GeeksforGeeks-1 y traducido por Barcelona Geeks. The original can be accessed here. Licence: CCBY-SA