Java - Clase de cadenas

Las cadenas, que se utilizan ampliamente en la programación Java, son una secuencia de caracteres. En el lenguaje de programación Java, las cadenas se tratan como objetos.

La plataforma Java proporciona la clase String para crear y manipular cadenas.

Creando cadenas

La forma más directa de crear una cadena es escribir:

String greeting = "Hello world!";

Siempre que encuentra un literal de cadena en su código, el compilador crea un objeto String con su valor en este caso, "¡Hola mundo!".

Como con cualquier otro objeto, puede crear objetos String usando la palabra clave new y un constructor. La clase String tiene 11 constructores que le permiten proporcionar el valor inicial de la cadena utilizando diferentes fuentes, como una matriz de caracteres.

Ejemplo

public class StringDemo {

   public static void main(String args[]) {
      char[] helloArray = { 'h', 'e', 'l', 'l', 'o', '.' };
      String helloString = new String(helloArray);  
      System.out.println( helloString );
   }
}

Esto producirá el siguiente resultado:

Salida

hello.

Note- La clase String es inmutable, por lo que una vez que se crea un objeto String no se puede cambiar. Si es necesario realizar muchas modificaciones en las cadenas de caracteres, debe utilizar las clases String Buffer y String Builder .

Longitud de la cuerda

Los métodos utilizados para obtener información sobre un objeto se conocen como accessor methods. Un método de acceso que puede utilizar con cadenas es el método length (), que devuelve el número de caracteres contenidos en el objeto de cadena.

El siguiente programa es un ejemplo de length(), método Clase de cadena.

Ejemplo

public class StringDemo {

   public static void main(String args[]) {
      String palindrome = "Dot saw I was Tod";
      int len = palindrome.length();
      System.out.println( "String Length is : " + len );
   }
}

Esto producirá el siguiente resultado:

Salida

String Length is : 17

Concatenación de cadenas

La clase String incluye un método para concatenar dos cadenas:

string1.concat(string2);

Esto devuelve una nueva cadena que es cadena1 con cadena2 agregada al final. También puede usar el método concat () con cadenas literales, como en -

"My name is ".concat("Zara");

Las cadenas se concatenan más comúnmente con el operador +, como en -

"Hello," + " world" + "!"

que resulta en -

"Hello, world!"

Veamos el siguiente ejemplo:

Ejemplo

public class StringDemo {

   public static void main(String args[]) {
      String string1 = "saw I was ";
      System.out.println("Dot " + string1 + "Tod");
   }
}

Esto producirá el siguiente resultado:

Salida

Dot saw I was Tod

Crear cadenas de formato

Tiene métodos printf () y format () para imprimir resultados con números formateados. La clase String tiene un método de clase equivalente, format (), que devuelve un objeto String en lugar de un objeto PrintStream.

El uso del método estático format () de String le permite crear una cadena formateada que puede reutilizar, a diferencia de una declaración de impresión única. Por ejemplo, en lugar de -

Ejemplo

System.out.printf("The value of the float variable is " +
                  "%f, while the value of the integer " +
                  "variable is %d, and the string " +
                  "is %s", floatVar, intVar, stringVar);

Puedes escribir

String fs;
fs = String.format("The value of the float variable is " +
                   "%f, while the value of the integer " +
                   "variable is %d, and the string " +
                   "is %s", floatVar, intVar, stringVar);
System.out.println(fs);

Métodos de cadena

Aquí está la lista de métodos admitidos por la clase String:

No Señor. Método y descripción
1 char charAt (índice int)

Devuelve el carácter en el índice especificado.

2 int compareTo (Objeto o)

Compara esta cadena con otro objeto.

3 int compareTo (String anotherString)

Compara dos cadenas lexicográficamente.

4 int compareToIgnoreCase (String str)

Compara dos cadenas lexicográficamente, ignorando las diferencias entre mayúsculas y minúsculas.

5 String concat (String str)

Concatena la cadena especificada al final de esta cadena.

6 boolean contentEquals (StringBuffer sb)

Devuelve verdadero si y solo si esta cadena representa la misma secuencia de caracteres que el StringBuffer especificado.

7 static String copyValueOf (char [] datos)

Devuelve una cadena que representa la secuencia de caracteres en la matriz especificada.

8 static String copyValueOf (char [] datos, int offset, int count)

Devuelve una cadena que representa la secuencia de caracteres en la matriz especificada.

9 boolean endsWith (Sufijo de cadena)

Prueba si esta cadena termina con el sufijo especificado.

10 booleano es igual a (Objeto anObjeto)

Compara esta cadena con el objeto especificado.

11 boolean equalsIgnoreCase (String anotherString)

Compara esta cadena con otra cadena, ignorando las consideraciones de caso.

12 byte [] getBytes ()

Codifica esta cadena en una secuencia de bytes utilizando el juego de caracteres predeterminado de la plataforma, almacenando el resultado en una nueva matriz de bytes.

13 byte [] getBytes (String charsetName)

Codifica esta cadena en una secuencia de bytes utilizando el conjunto de caracteres con nombre, almacenando el resultado en una nueva matriz de bytes.

14 void getChars (int srcBegin, int srcEnd, char [] dst, int dstBegin)

Copia caracteres de esta cadena en la matriz de caracteres de destino.

15 int hashCode ()

Devuelve un código hash para esta cadena.

dieciséis int indexOf (int ch)

Devuelve el índice dentro de esta cadena de la primera aparición del carácter especificado.

17 int indexOf (int ch, int fromIndex)

Devuelve el índice dentro de esta cadena de la primera aparición del carácter especificado, comenzando la búsqueda en el índice especificado.

18 int indexOf (String str)

Devuelve el índice dentro de esta cadena de la primera aparición de la subcadena especificada.

19 int indexOf (String str, int fromIndex)

Devuelve el índice dentro de esta cadena de la primera aparición de la subcadena especificada, comenzando en el índice especificado.

20 Pasante de cuerdas ()

Devuelve una representación canónica del objeto de cadena.

21 int lastIndexOf (int ch)

Devuelve el índice dentro de esta cadena de la última aparición del carácter especificado.

22 int lastIndexOf (int ch, int fromIndex)

Devuelve el índice dentro de esta cadena de la última aparición del carácter especificado, buscando hacia atrás comenzando en el índice especificado.

23 int lastIndexOf (String str)

Devuelve el índice dentro de esta cadena de la aparición más a la derecha de la subcadena especificada.

24 int lastIndexOf (String str, int fromIndex)

Devuelve el índice dentro de esta cadena de la última aparición de la subcadena especificada, buscando hacia atrás comenzando en el índice especificado.

25 longitud int ()

Devuelve la longitud de esta cadena.

26 coincidencias booleanas (String regex)

Indica si esta cadena coincide o no con la expresión regular dada.

27 boolean regionMatches (boolean ignoreCase, int toffset, String other, int ooffset, int len)

Comprueba si dos regiones de cuerdas son iguales.

28 boolean regionMatches (int toffset, String other, int ooffset, int len)

Comprueba si dos regiones de cuerdas son iguales.

29 Reemplazo de cadena (char oldChar, char newChar)

Devuelve una nueva cadena resultante de reemplazar todas las apariciones de oldChar en esta cadena por newChar.

30 String replaceAll (String regex, String reemplazo

Reemplaza cada subcadena de esta cadena que coincide con la expresión regular dada con el reemplazo dado.

31 String replaceFirst (String regex, String reemplazo)

Reemplaza la primera subcadena de esta cadena que coincide con la expresión regular dada con el reemplazo dado.

32 String [] split (String regex)

Divide esta cadena alrededor de las coincidencias de la expresión regular dada.

33 String [] split (String regex, int limit)

Divide esta cadena alrededor de las coincidencias de la expresión regular dada.

34 boolean startsWith (prefijo de cadena)

Prueba si esta cadena comienza con el prefijo especificado.

35 boolean startsWith (prefijo de cadena, int toffset)

Prueba si esta cadena comienza con el prefijo especificado que comienza con un índice especificado.

36 SubSequence CharSequence (int beginIndex, int endIndex)

Devuelve una nueva secuencia de caracteres que es una subsecuencia de esta secuencia.

37 Subcadena de cadena (int beginIndex)

Devuelve una nueva cadena que es una subcadena de esta cadena.

38 Subcadena de cadena (int beginIndex, int endIndex)

Devuelve una nueva cadena que es una subcadena de esta cadena.

39 char [] toCharArray ()

Convierte esta cadena en una nueva matriz de caracteres.

40 Cadena toLowerCase ()

Convierte todos los caracteres de esta cadena a minúsculas utilizando las reglas de la configuración regional predeterminada.

41 String toLowerCase (configuración regional)

Convierte todos los caracteres de esta cadena a minúsculas utilizando las reglas de la configuración regional dada.

42 Cadena toString ()

Este objeto (que ya es una cadena) se devuelve.

43 Cadena toUpperCase ()

Convierte todos los caracteres de esta cadena a mayúsculas utilizando las reglas de la configuración regional predeterminada.

44 String toUpperCase (configuración regional)

Convierte todos los caracteres de esta cadena en mayúsculas utilizando las reglas de la configuración regional dada.

45 Recorte de hilo ()

Devuelve una copia de la cadena, omitiendo los espacios en blanco iniciales y finales.

46 static String valueOf (tipo de datos primitivo x)

Devuelve la representación de cadena del argumento de tipo de datos pasado.