Manipulación de cadenas Java: funciones y métodos con EJEMPLO

¿Qué son las cadenas?

Una cadena en términos literales es una serie de caracteres. Oye, ¿dijiste caracteres? ¿No es un tipo de datos primitivo en Java? Sí, en términos técnicos, la cadena Java básica es básicamente una matriz de caracteres.

Entonces mi cadena anterior de "ROSE”se puede representar de la siguiente manerawing –

Cadena Java

¿Por qué utilizar cadenas?

Una de las funciones principales de la informática moderna es procesar el lenguaje humano.

De manera similar a cómo numbers son importantes para las matemáticas, los símbolos del lenguaje son importantes para el significado y la toma de decisiones. Aunque puede que no sea visible para los usuarios de computadoras, las computadoras procesan el lenguaje en segundo plano con tanta precisión como una calculadora. Los cuadros de diálogo de ayuda proporcionan instrucciones. Los menús ofrecen opciones. Y las pantallas de datos muestran estados, errores y cambios de idioma en tiempo real.

Como programador de Java, una de sus principales herramientas para almacenar y procesar lenguaje será la clase String.

Ejemplos de sintaxis de cadenas

Ahora, vayamos a algo de sintaxis; después de todo, necesitamos escribir esto en código Java, ¿no es así?

Una cadena es una matriz de caracteres, representada como:

//String is an array of characters
char[] arrSample = {'R', 'O', 'S', 'E'};
String strSample_1 = new String (arrSample);

En términos técnicos, la cadena se define de la siguiente manera en el ejemplo anterior:

= new (argument);

Ahora no siempre podemos escribir nuestras cadenas como matrices; por tanto, podemos definir String en Java de la siguiente manera:

//Representation of String
String strSample_2 = "ROSE";

En términos técnicos, lo anterior se representa como:

= ;

La Clase de cadena Java Se extiende las Clase de objeto.

Concatenación de cadenas:

La concatenación es la unión de dos o más cadenas.

Eche un vistazo a la imagen de abajo.

Ejemplos de sintaxis de cadenas

Tenemos dos cadenas str1 = “Roca” y str2 = “Estrella”

Si sumamos estas dos cadenas, deberíamos tener un resultado como str3= “RockStar”.

Consulte el siguiente fragmento de código que explica los dos métodos para realizar la concatenación de cadenas.

Primero está usando “concat”método de la clase String y el segundo usa aritmética “+” operacolina. Ambos resultados dan el mismo resultado.

public class Sample_String{
  public static void main(String[] args){
//String Concatenation
String str1 = "Rock";
String str2 = "Star";
//Method 1 : Using concat
String str3 = str1.concat(str2);
System.out.println(str3);
//Method 2 : Using "+" operator
String str4 = str1 + str2;
System.out.println(str4);
}
}

Métodos de cadena Java importantes:

Métodos de cadena de Java

Hagamos algunas preguntas a la clase Java String y veamos si puede responderlas:

Método de “longitud” de cadena

¿Cómo determinarás la longitud de una cadena determinada? He proporcionado un método llamado "de largo“. Úselo contra la cuerda que necesita para encontrar la longitud.

public class Sample_String{
  public static void main(String[] args){  //Our sample string for this tutorial
  String str_Sample = "RockStar";
  //Length of a String
  System.out.println("Length of String: " + str_Sample.length());}}

Rendimiento esperado:

Length of String: 8

Método de cadena "indexOf"

Si conozco la longitud, ¿cómo puedo encontrar qué carácter está en qué posición? En resumen, ¿cómo encontraré el índice de un personaje?

Tú mismo respondiste, amigo, hay un método "indexOf" que te ayudará a determinar la ubicación de un carácter específico que especifiques.

public class Sample_String{
  public static void main(String[] args){//Character at position
String str_Sample = "RockStar";
System.out.println("Character at position 5: " + str_Sample.charAt(5));
//Index of a given character
System.out.println("Index of character 'S': " + str_Sample.indexOf('S'));}}

Rendimiento esperado:

Character at position 5: t
Index of character 'S': 4

Método de cadena "charAt"

De manera similar a la pregunta anterior, dado el índice, ¿cómo puedo conocer el personaje en esa ubicación?

Sencillo otra vez!! Utilizar el "charat"Método y proporcione el índice cuyo carácter necesita encontrar.

public class Sample_String{
  public static void main(String[] args){//Character at position
String str_Sample = "RockStar";
System.out.println("Character at position 5: " + str_Sample.charAt(5));}}

Rendimiento esperado:

Character at position 5: t

Método "Comparar con" de cadena

¿Quiero comprobar si el String que se generó mediante algún método es igual a algo con lo que quiero verificar? ¿Cómo comparo dos cadenas?

Utilice el método “comparar con”y especifique la cadena que desea comparar.

Utilice "compareToIgnoreCase" en caso de que no desee que el resultado distinga entre mayúsculas y minúsculas.

El resultado tendrá el valor 0 si la cadena del argumento es igual a esta cadena; un valor menor que 0 si esta cadena es lexicográficamente menor que el argumento de cadena; y un valor mayor que 0 si esta cadena es lexicográficamente mayor que el argumento de la cadena.

public class Sample_String{
  public static void main(String[] args){//Compare to a String
String str_Sample = "RockStar";
  System.out.println("Compare To 'ROCKSTAR': " + str_Sample.compareTo("rockstar"));
  //Compare to - Ignore case
  System.out.println("Compare To 'ROCKSTAR' - Case Ignored: " + str_Sample.compareToIgnoreCase("ROCKSTAR"));}}

Rendimiento esperado:

Compare To 'ROCKSTAR': -32
Compare To 'ROCKSTAR' - Case Ignored: 0

Método de cadena "contener"

Sé parcialmente lo que debería haber contenido la cadena, ¿cómo puedo confirmar si la cadena contiene una secuencia de caracteres que especifico?

Utilice el método “contiene”Y especifique los caracteres que necesita verificar.

Returns verdadero si y sólo si esta cadena contiene la secuencia especificada de valores de caracteres.

public class Sample_String{
  public static void main(String[] args){  //Check if String contains a sequence
String str_Sample = "RockStar";
  System.out.println("Contains sequence 'tar': " + str_Sample.contains("tar"));}}

Rendimiento esperado:

Contains sequence 'tar': true

Método de cadena "termina con"

¿Cómo confirmo si una Cadena termina con un sufijo particular? Nuevamente respondiste. Utilice el método "endsWith" y especifique el sufijo en los argumentos.

Returns verdadero si la secuencia de caracteres representada por el argumento es un sufijo de la secuencia de caracteres representada por este objeto.

public class Sample_String{
  public static void main(String[] args){  //Check if ends with a particular sequence
String str_Sample = "RockStar";
  System.out.println("EndsWith character 'r': " + str_Sample.endsWith("r"));}}

Rendimiento esperado:

EndsWith character 'r': true

Método de cadena "replaceAll" y "replaceFirst"

¿Quiero modificar mi String en varios lugares y reemplazar varias partes del String?

Métodos Java String Reemplazar, reemplazarTodos y reemplazarPrimeros. Puede especificar la parte de la Cadena que desea reemplazar y la Cadena de reemplazo en los argumentos.

public class Sample_String{
  public static void main(String[] args){//Replace Rock with the word Duke
String str_Sample = "RockStar";
System.out.println("Replace 'Rock' with 'Duke': " + str_Sample.replace("Rock", "Duke"));}}

Rendimiento esperado:

Replace 'Rock' with 'Duke': DukeStar

Método de cadena Java “tolowercase” y Java “touppercase”

¿Quiero que toda mi cadena se muestre en minúsculas o en mayúsculas?

Simplemente use los métodos “toLowercase()” o “ToUpperCase()” contra las cadenas que deben convertirse.

public class Sample_String{
  public static void main(String[] args){//Convert to LowerCase
String str_Sample = "RockStar";
System.out.println("Convert to LowerCase: " + str_Sample.toLowerCase());
//Convert to UpperCase
System.out.println("Convert to UpperCase: " + str_Sample.toUpperCase());}}

Rendimiento esperado:

Convert to LowerCase: rockstar
Convert to UpperCase: ROCKSTAR

Puntos importantes a tener en cuenta:

  • String es una clase final; es decir, una vez creado, el valor no se puede modificar. Por tanto, los objetos String se denominan inmutables.
  • La Máquina Virtual Java (JVM) crea una ubicación de memoria especialmente para cadenas llamada Pool constante de cadenas. Es por eso que String se puede inicializar sin la palabra clave "nueva".
  • La clase de cadena se incluye jerarquía java.lang.String. Pero no es necesario importar esta clase. La plataforma Java los proporciona automáticamente.
  • Cordón La referencia se puede anular pero eso no elimina el contenido.; es decir, si

Cadena h1 = "hola";

h1 = “hola”+”mundo”;

entonces la cadena "hola" no se elimina. Simplemente pierde su control.

  • Múltiples referencias se puede usar para la misma cadena pero lo hará ocurrir en el mismo lugar; es decir, si

Cadena h1 = "hola";

Cadena h2 = "hola";

Cadena h3 = "hola";

entonces solo se crea un grupo para la cadena "hola" en la memoria con 3 referencias: h1, h2, h3

  • Si un el número está citado en " " Entonces eso se convierte en una cuerda, ya no es un número. Eso significa si

Cadena S1 =”El número es: “+ “123”+”456″;

Sistema.salir.println(S1);

luego imprimirá: El número es: 123456

Si la inicialización es así:

Cadena S1 = “El número es: “+(123+456);

System.out.println(S1);

luego imprimirá: El número es:579

¡Eso es todo para Strings!