Agregar cadenas en Java de manera eficiente
-
Use
concat()
de la clasejava.lang.String
para agregar cadenas en Java -
Concatenación de cadenas mediante el operador
+
-
Usando el método
concat()
dejava.lang.String
-
Uso de
StringBuffer
para concatenar cadenas en Java -
Uso de
StringBuilder
en la concatenación de cadenas en Java
Cuando hablamos de concatenación de cadenas en Java, nos viene a la mente el operador +
para agregar cadenas de manera más eficiente. Dado que Java no proporciona soporte para la sobrecarga, es especial que las cadenas tengan ese comportamiento. Hay varios métodos, además del operador +
, que se utilizan para añadir una cadena en Java que son;
StringBuffer
StringBuilder
Use concat()
de la clase java.lang.String
para agregar cadenas en Java
Tanto las clases StringBuffer
como StringBuilder
se utilizan para este propósito. Se le da importancia a StringBuilder
porque es el método más rápido para concatenar cadenas. En segundo lugar, se le da prioridad a StringBuffer
debido al método sincronizado y porque los otros métodos aparte de ellos son 1000 veces más lentos que estos dos. Aquí veremos un ejemplo de estos cuatro métodos.
public class Main {
public static void main(String args[]) {
// 1st method of concat
String str1 = "Most";
str1 = str1.concat(" Welcome");
str1 = str1.concat(" to University");
System.out.println(str1);
// 2nd method of concat
String str2 = "Today";
str2 = str2.concat(" is").concat(" your first").concat(" day");
System.out.println(str2);
}
}
Producción :
Most Welcome to University
Today is your first day
Concatenación de cadenas mediante el operador +
Este es el método más simple para unir cadenas y valores numéricos en Java. Cuando los usuarios tienen dos o más valores primitivos como short
, char
o int
al comienzo de una concatenación de cadenas, deben convertirse explícitamente en cadenas. Por ejemplo, System.out.println(300, + 'B'+ "")
nunca imprimirá 300B, imprimirá 366 tomando el valor ASCII
de B y luego sumándolo a 300. Por otro lado , si usamos System.out.println('', + 300 +'B')
, imprimirá 300B. Todos los escaneos del operador +
se concatenarán en varias llamadas StringBuilder.append()
antes de llamar a String()
.
Usando el método concat()
de java.lang.String
El método concat(String str)
concatena algunas cadenas específicas al final de la cadena. Asigna el char[]
de longitud, igual a la longitud combinada de dos cadenas. Este método copia datos String en esa cadena y crea un nuevo objeto String desde el constructor String privado, que no copia la entrada char[]
como se indica a continuación.
import java.util.Scanner;
public class Main {
public static void main(String args[]) {
Scanner sc = new Scanner(System.in);
System.out.println("Enter the first string: ");
String str1 = sc.next();
System.out.println("Enter the second string: ");
String str2 = sc.next();
String result = str1 + str2;
System.out.println(result);
}
}
Producción :
Enter the first string:
United
Enter the second string:
Kingdom
UnitedKingdom
Uso de StringBuffer
para concatenar cadenas en Java
Este es el método más apropiado para concatenar múltiples cadenas, enteros y otras partes de Java cuando StringBuilder
no está disponible. Funciona más rápido que los métodos de operador concat()
y +
. La única desventaja de este enfoque es que los métodos de adición de StringBuffer
están sincronizados. Su metodología de trabajo es similar al método StringBuilder
. También proporciona diferentes métodos de adición sobrecargados para concatenar char
, int
, short
, etc.
public class Main {
public static void main(String args[]) {
StringBuffer sb = new StringBuffer("My ");
sb.append("Country");
System.out.println(sb);
}
}
Producción :
My Country
Uso de StringBuilder
en la concatenación de cadenas en Java
Este es uno de los mejores métodos para concatenar cadenas en Java. Más importante aún, cuando los usuarios están concatenando varias cadenas. Este método es fácil y eficiente de usar cuando los usuarios deben agregar varias cadenas. Pero este método no se usa comúnmente cuando los usuarios deben concatenar cadenas.
public class Main {
public static void main(String args[]) {
StringBuilder sb = new StringBuilder("My ");
sb.append("Country");
System.out.println(sb);
}
}
Producción :
My Country