logo

Cadena de Java

En Java , una cadena es básicamente un objeto que representa una secuencia de valores de caracteres. Un formación de caracteres funciona igual que la cadena Java. Por ejemplo:

 char[] ch={'j','a','v','a','t','p','o','i','n','t'}; String s=new String(ch); 

es lo mismo que:

 String s='javatpoint'; 

Cadena de Java La clase proporciona muchos métodos para realizar operaciones en cadenas como compare(), concat(), equals(), split(), length(), replace(), compareTo(), intern(), substring(), etc.

La clase java.lang.String implementa Serializable , Comparable y Secuencia de caracteres interfaces .

Cadena en Java

Interfaz de secuencia de caracteres

La interfaz CharSequence se utiliza para representar la secuencia de caracteres. Cadena, búfer de cadena y Constructor de cadenas las clases lo implementan. Significa que podemos crear cadenas en Java usando estas tres clases.

Secuencia de caracteres en Java

La cadena Java es inmutable, lo que significa que no se puede cambiar. Cada vez que cambiamos cualquier cadena, se crea una nueva instancia. Para cadenas mutables, puede utilizar las clases StringBuffer y StringBuilder.

Hablaremos de cadenas inmutables más adelante. Primero comprendamos qué es String en Java y cómo crear el objeto String.

¿Qué es una cadena en Java?

Generalmente, String es una secuencia de caracteres. Pero en Java, una cadena es un objeto que representa una secuencia de caracteres. La clase java.lang.String se utiliza para crear un objeto de cadena.

¿Cómo crear un objeto de cadena?

Hay dos formas de crear un objeto String:

  1. Por cadena literal
  2. Por nueva palabra clave

1) Literal de cadena

El literal de cadena Java se crea utilizando comillas dobles. Por ejemplo:

 String s='welcome'; 

Cada vez que crea un literal de cadena, la JVM verifica primero el 'grupo de constantes de cadena'. Si la cadena ya existe en el grupo, se devuelve una referencia a la instancia agrupada. Si la cadena no existe en el grupo, se crea una nueva instancia de cadena y se coloca en el grupo. Por ejemplo:

 String s1='Welcome'; String s2='Welcome';//It doesn't create a new instance 

Cadena de Java

En el ejemplo anterior, solo se creará un objeto. En primer lugar, JVM no encontrará ningún objeto de cadena con el valor 'Bienvenido' en el grupo constante de cadenas, por eso creará un nuevo objeto. Después de eso, encontrará la cadena con el valor 'Bienvenido' en el grupo, no creará un nuevo objeto pero devolverá la referencia a la misma instancia.

Nota: Los objetos de cadena se almacenan en un área de memoria especial conocida como 'grupo de constantes de cadena'.

¿Por qué Java utiliza el concepto de String literal?

Para hacer que Java sea más eficiente en memoria (porque no se crean nuevos objetos si ya existe en el grupo de constantes de cadena).

2) Por nueva palabra clave

 String s=new String('Welcome');//creates two objects and one reference variable 

En tal caso, JVM creará un nuevo objeto de cadena en la memoria del montón normal (sin grupo), y el literal 'Bienvenido' se colocará en el grupo constante de cadenas. La variable s se referirá al objeto en un montón (no grupo).

concatenación sql

Ejemplo de cadena Java

StringExample.java

 public class StringExample{ public static void main(String args[]){ String s1='java';//creating string by Java string literal char ch[]={'s','t','r','i','n','g','s'}; String s2=new String(ch);//converting char array to string String s3=new String('example');//creating Java string by new keyword System.out.println(s1); System.out.println(s2); System.out.println(s3); }} 
Pruébalo ahora

Producción:

java strings example 

El código anterior convierte un carbonizarse matriz en un Cadena objeto. Y muestra los objetos String s1, s2 , y s3 en la consola usando imprimirln() método.

Métodos de clase de cadena Java

La clase java.lang.String proporciona muchos métodos útiles para realizar operaciones en secuencias de valores de caracteres.

No.MétodoDescripción
1 char charAt(índice int) Devuelve el valor de carácter para el índice particular.
2 longitud entera() Devuelve la longitud de la cadena
3 formato de cadena estática (formato de cadena, objeto... argumentos) Devuelve una cadena formateada.
4 formato de cadena estática (localización l, formato de cadena, objeto... args) Devuelve una cadena formateada con la configuración regional dada.
5 Subcadena de cadena (int comenzarIndex) Devuelve una subcadena para el índice de inicio dado.
6 Subcadena de cadena (int startIndex, int endIndex) Devuelve una subcadena para el índice inicial y el índice final dados.
7 booleano contiene (CharSequence s) Devuelve verdadero o falso después de hacer coincidir la secuencia del valor del carácter.
8 Unión de cadenas estáticas (delimitador CharSequence, elementos CharSequence...) Devuelve una cadena unida.
9 Unión de cadenas estáticas (delimitador de secuencia de caracteres, elementos iterables) Devuelve una cadena unida.
10 booleano es igual (objeto otro) Comprueba la igualdad de la cadena con el objeto dado.
11 booleano está vacío() Comprueba si la cadena está vacía.
12 Concat de cadena (cadena de cadena) Concatena la cadena especificada.
13 Reemplazo de cadena (carácter antiguo, carbón nuevo) Reemplaza todas las apariciones del valor de carácter especificado.
14 Reemplazo de cadena (CharSequence antiguo, CharSequence nuevo) Reemplaza todas las apariciones de la CharSequence especificada.
15 Cadena estática es igual a IgnoreCase (cadena otra) Compara otra cadena. No marca caso.
16 Cadena [] dividida (cadena expresión regular) Devuelve una cadena dividida que coincide con expresiones regulares.
17 String[] split(String regex, límite int) Devuelve una cadena dividida que coincide con la expresión regular y el límite.
18 Pasante de cadena() Devuelve una cadena interna.
19 int índice de (int ch) Devuelve el índice de valor de carácter especificado.
20 int indexOf(int ch, int fromIndex) Devuelve el índice de valor de carácter especificado comenzando con el índice dado.
21 int indexOf (subcadena de cadena) Devuelve el índice de subcadena especificado.
22 int indexOf(Subcadena de cadena, int fromIndex) Devuelve el índice de subcadena especificado comenzando con el índice dado.
23 Cadena en minúsculas() Devuelve una cadena en minúsculas.
24 Cadena en minúsculas (configuración regional l) Devuelve una cadena en minúsculas utilizando la configuración regional especificada.
25 Cadena en mayúsculas() Devuelve una cadena en mayúsculas.
26 Cadena en mayúsculas (configuración regional l) Devuelve una cadena en mayúsculas utilizando la configuración regional especificada.
27 Recorte de cuerda() Elimina los espacios iniciales y finales de esta cadena.
28 valor de cadena estática de (valor int) Convierte un tipo dado en una cadena. Es un método sobrecargado.

¿Sabes?
  • ¿Por qué los objetos String son inmutables?
  • ¿Cómo crear una clase inmutable?
  • ¿Qué es el grupo constante de cadenas?
  • ¿Qué código escribe el compilador si concatena cualquier cadena con + (operador de concatenación de cadenas)?
  • ¿Cuál es la diferencia entre las clases StringBuffer y StringBuilder?

¿Qué aprenderemos en el manejo de cadenas?
  • Concepto de cuerda
  • Cadena inmutable
  • Comparación de cadenas
  • Concatenación de cadenas
  • Concepto de subcadena
  • Métodos de clase de cadena y su uso.
  • Clase StringBuffer
  • Clase StringBuilder
  • Creando una clase inmutable
  • método toString()
  • Clase StringTokenizer