Soga es una secuencia de caracteres, por ejemplo, “Hola” es una cadena de 5 caracteres. En Java, la cadena es un objeto inmutable, lo que significa que es constante y no se puede cambiar una vez creada. En este tutorial, aprenderemos la clase String y los métodos String en detalle junto con muchos otros tutoriales de Java String.
Creando una cadena
Hay dos formas de crear una cadena en Java
- Cadena literal
- Usando una nueva palabra clave
Cadena literal
En java, las cadenas se pueden crear así: Asignar un literal de cadena a una instancia de cadena:
String str1 = "Welcome"; String str2 = "Welcome";
El problema con este enfoque: Como dije al principio, String es un objeto en Java. Sin embargo, no hemos creado ningún objeto de cadena con la nueva palabra clave anterior. El compilador hace esto por nosotros, crea un objeto de cadena que tiene el literal de cadena (que proporcionamos, en este caso es “Bienvenido”) y lo asigna a las instancias de cadena dadas.
Pero si el objeto ya existe en la memoria, no crea un nuevo objeto sino que asigna el mismo objeto antiguo a la nueva instancia, esto significa que incluso si tenemos dos instancias de cadena arriba (str1 y str2), el compilador creó solo en el objeto string ( teniendo el valor “Bienvenido”) y asignado el mismo a ambas instancias. Por ejemplo, hay 10 instancias de cadena que tienen el mismo valor, lo que significa que solo hay un objeto con el valor en la memoria y las 10 instancias de cadena apuntan al mismo objeto.
¿Y si quisiéramos tener dos objetos diferentes con la misma cadena? Para esto necesitaríamos crear cadenas usando nueva palabra clave.
Usando una nueva palabra clave
Como vimos anteriormente, cuando intentamos asignar el mismo objeto de cadena a dos literales diferentes, el compilador creó solo un objeto e hizo que ambos literales apuntasen al mismo objeto. Para superar este enfoque, podemos crear cadenas como esta:
String str1 = new String("Welcome"); String str2 = new String("Welcome");
En este caso, el compilador crearía dos objetos diferentes en la memoria con la misma cadena.
Un ejemplo simple de una cadena de Java
public class Example{ public static void main(String args[]){ //creating a string by java string literal String str = "Beginnersbook"; char arrch[]={'h','e','l','l','o'}; //converting char array arrch[] to string str2 String str2 = new String(arrch); //creating another java string str3 by using new keyword String str3 = new String("Java String Example"); //Displaying all the three strings System.out.println(str); System.out.println(str2); System.out.println(str3); } }
Producción:
Beginnersbook hello Java String Example
Métodos de cadena de Java
Aquí está la lista de métodos disponibles en la clase Java String. Estos métodos se explican en tutoriales separados con la ayuda de ejemplos. Los enlaces a los tutoriales se proporcionan a continuación:
-
char charAt (int index): Devuelve el carácter en el índice especificado. El valor de índice especificado debe estar entre 0 y length () -1, ambos incluidos. Lanza IndexOutOfBoundsException si index <0 ||> = longitud de String.
-
boolean es igual a (Object obj): compara la cadena con la cadena especificada y devuelve verdadero si ambos coinciden con falso.
-
boolean equalsIgnoreCase (String string): funciona como el método equals pero no tiene en cuenta el caso al comparar cadenas. Hace una comparación que no distingue entre mayúsculas y minúsculas.
-
int compareTo (String string): este método compara las dos cadenas según el valor Unicode de cada carácter en las cadenas.
-
int compareToIgnoreCase (String string): Igual que el método CompareTo, sin embargo, ignore el caso al comparar.
-
boolean startsWith (String prefix, int offset): comprueba si la subcadena (que comienza en el índice de desplazamiento especificado) tiene el prefijo especificado o no.
-
boolean startsWith (prefijo de cadena): comprueba si la cadena tiene un prefijo especificado; si es así, devuelve verdadero en caso contrario, falso.
-
booleanendsWith (Sufijo de cadena): comprueba si la cadena termina con el sufijo especificado.
-
int hashCode (): devuelve el código hash de la cadena.
-
int indexOf (int ch): Devuelve el índice de la primera aparición del carácter ch especificado en la cadena.
-
int indexOf (int ch, int fromIndex): igual que el método indexOf, sin embargo, comienza a buscar la cadena desde el índice especificado fromIndex.
-
int lastIndexOf (int ch): Devuelve la última aparición del carácter ch en la cadena.
-
int lastIndexOf (int ch, int fromIndex): como el método lastIndexOf (int ch), inicie la búsqueda desde fromIndex.
-
int indexOf (String str): este método devuelve el índice de la primera aparición de la subcadena str especificada.
-
int lastindexOf (String str): devuelve el índice de la última aparición de la cadena str.
-
String substring (int beginIndex): devuelve la subcadena de la cadena. La subcadena comienza con el carácter en el índice especificado.
-
Cadena subcadena (int beginIndex, int endIndex): devuelve la subcadena. La subcadena comienza con el carácter en beginIndex y termina con el carácter en endIndex.
-
String concat (String str): concatena la cadena especificada “str” al final de la cadena.
-
Reemplazar cadena (char oldChar, char newChar): devuelve la nueva cadena actualizada después de cambiar todas las apariciones de oldChar a newChar.
-
boolean contains (CharSequence s): comprueba si la cadena contiene la secuencia especificada de valores de caracteres. Si es así, devuelve verdadero en caso contrario falso. Lanza NullPointerException de “s” es nulo.
-
String toUpperCase (Locale): convierte la cadena en una cadena en mayúsculas utilizando las reglas definidas por la configuración regional especificada.
-
String toUpperCase (): equivalente a toUpperCase (Locale.getDefault ()).
-
public String intern (): este método busca la cadena especificada en el grupo de memoria y devuelve la referencia a ella si la encuentra; de lo contrario, asigna el espacio de memoria a la cadena especificada y le asigna la referencia.
-
public boolean isEmpty (): este método devuelve verdadero si la cadena dada tiene una longitud de 0. Si la longitud de la cadena Java especificada no es cero, devuelve falso.
-
public static String join (): este método une las cadenas suministradas utilizando el delimitador especificado y devuelve la cadena Java concatenada
-
String replaceFirst (String regex, String replacement): reemplaza la primera aparición de la subcadena que se ajusta a la expresión regular dada “regex” con la cadena de reemplazo especificada.
-
String replaceAll (String regex, String replacement): reemplaza todas las apariciones de subcadenas que se ajustan a la expresión regular regex con la cadena de reemplazo.
-
Soga[] split (String regex, int limit): divide la cadena y devuelve la matriz de subcadenas que coinciden con la expresión regular dada. límite es un umbral de resultado aquí.
-
Soga[] split (String regex): como el método split (String regex, int limit), sin embargo, no tiene límite de umbral.
-
String toLowerCase (Locale): convierte la cadena en una cadena en minúsculas utilizando las reglas definidas por la configuración regional específica.
-
Public static String format (): este método devuelve una cadena java formateada
-
Cadena toLowerCase (): Equivalente a toLowerCase (Locale. GetDefault ()).
-
String trim (): devuelve la subcadena después de omitir los espacios en blanco iniciales y finales de la cadena original.
-
carbonizarse[] toCharArray (): convierte la cadena en una matriz de caracteres.
-
static String copyValueOf (char[] data): devuelve una cadena que contiene los caracteres de la matriz de caracteres especificada.
-
static String copyValueOf (char[] data, int offset, int count): como el método anterior con dos argumentos adicionales: el desplazamiento inicial del subarreglo y la longitud del subarreglo.
-
void getChars (int srcBegin, int srcEnd, char[] dest, int destBegin): copia los caracteres de src matriz al dest Vector. Solo el rango especificado (srcBegin a srcEnd) se copia en el subarreglo dest (comenzando desdeestBegin).
-
static String valueOf (): este método devuelve una representación de cadena de los argumentos pasados como int, long, float, double, char y char array.
-
boolean contentEquals (StringBuffer sb): compara la cadena con el búfer de cadena especificado.
-
boolean regionMatches (int srcoffset, String dest, int destoffset, int len): compara la subcadena de entrada con la subcadena especificada.
-
boolean regionMatches (boolean ignoreCase, int srcoffset, String dest, int destoffset, int len): otra variación del método regionMatches con el argumento booleano adicional para especificar si la comparación distingue entre mayúsculas y minúsculas.
-
byte[] getBytes (String charsetName): convierte la cadena en una secuencia de bytes utilizando la codificación del juego de caracteres especificado y devuelve la matriz de bytes resultante.
-
byte[] getBytes (): este método es similar al método anterior, solo usa la codificación predeterminada del juego de caracteres para convertir la cadena en una secuencia de bytes.
-
int length (): Devuelve la longitud de una cadena.
-
Coincidencias booleanas (cadena de expresiones regulares): comprueba si la cadena coincide con el valor especificado expresión regular regex.
- int codePointAt (int index): esto es similar al método charAt, sin embargo, devuelve el valor del punto de código Unicode del índice especificado en lugar del carácter en sí.
Tutoriales populares de cadenas de Java
He compartido varios tutoriales sobre cadenas en java. Aquí hay enlaces a tutoriales populares de Java String.
- Convertir String a int en Java
- Convertir int en String
- Convertir cadena en doble en Java
- Conversión de doble a cadena
- Convertir cadena a larga
- Conversión de largo a cadena
- Conversión de InputStream a String – ejemplo
- Cadena vs StringBuffer
- Convertir cadena en booleano primitivo
- conversión de booleano a cadena
- Convertir un objeto String en un objeto booleano
- Eliminar espacios finales de una cadena
- Llene a la izquierda una cadena con ceros / espacios
- Rellenar a la derecha una cuerda con ceros / espacios
- Programa para encontrar caracteres duplicados en una cadena
- Convertir char en String y viceversa
- Convierte una matriz de caracteres en String
- Conversión de cadena hasta la fecha
- Conversión de fecha a cadena
- Conversión de ASCII a cadena
- conversión de flotador a cadena
- Conversión de StackTrace a String
- Conversión de escritor a cadena
- Convertir cadena en ArrayList
- Java 8 – Ejemplo de StringJoiner
- Programa para invertir las palabras de una cadena en Java
- Programa para invertir una cadena en Java usando recursividad