¿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 manera:
En este tutorial, aprenderá:
- ¿Qué son las cadenas?
- ¿Por qué utilizar Strings?
- Ejemplos de sintaxis de cadenas
- Concatenación de cadenas
- Métodos importantes de cadenas de Java
¿Por qué utilizar Strings?
Una de las funciones principales de la informática moderna es procesar el lenguaje humano.
De manera similar a cómo los números 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 y 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 en el idioma en tiempo real.
Como programador de Java, una de sus principales herramientas para almacenar y procesar el 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í?
La cadena es una matriz de caracteres, representada como:
//String is an array of characterschar[] 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 lo tanto, podemos definir la Cadena en Java de la siguiente manera:
//Representation of StringString strSample_2 = "ROSE";
En términos técnicos, lo anterior se representa como:
= ;
La clase String Java amplía la clase Object.
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
Tenemos dos cadenas str1 = "Rock" y str2 = "Star"
Si sumamos estas dos cadenas, deberíamos obtener un resultado como str3 = “RockStar”.
Consulte el siguiente fragmento de código y explica los dos métodos para realizar la concatenación de cadenas.
Primero está usando el método " concat " de la clase String y segundo está usando el operador aritmético "+". Ambos resultados en la misma salida
clase pública Sample_String {public static void main (String [] args) {// Concatenación de cadenasString str1 = "Rock";String str2 = "Estrella";// Método 1: Usar concatCadena str3 = str1.concat (str2);System.out.println (str3);// Método 2: uso del operador "+"Cadena str4 = str1 + str2;System.out.println (str4);}}
Métodos importantes 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á la longitud de una cadena determinada? He proporcionado un método llamado "longitud". Úselo contra el String que necesita para encontrar la longitud.
clase pública Sample_String {public static void main (String [] args) {// Nuestra cadena de muestra para este tutorialString str_Sample = "RockStar";// Longitud de una cadenaSystem.out.println ("Longitud de la cadena: + str_Sample.length ());}}
producción:
Length of String: 8
Método de cadena "indexOf"
Si conozco la longitud, ¿cómo puedo encontrar qué personaje está en qué posición? En resumen, ¿cómo encontraré el índice de un personaje?
Usted mismo respondió, amigo, hay un método "indexOf" que le ayudará a determinar la ubicación de un personaje específico que usted especifique.
clase pública Sample_String {public static void main (String [] args) {// Carácter en la posiciónString str_Sample = "RockStar";System.out.println ("Carácter en la posición 5: + str_Sample.charAt (5));// Índice de un personaje dadoSystem.out.println ("Índice del carácter 'S': + str_Sample.indexOf ('S'));}}
Producción:
Character at position 5: tIndex of character 'S': 4
Método de cadena "charAt"
Similar a la pregunta anterior, dado el índice, ¿cómo puedo saber el personaje en esa ubicación?
¡¡Simple otra vez !! Utilice el método "charAt" y proporcione el índice cuyo carácter necesita encontrar.
clase pública Sample_String {public static void main (String [] args) {// Carácter en la posiciónString str_Sample = "RockStar";System.out.println ("Carácter en la posición 5: + str_Sample.charAt (5));}}
Producción:
Character at position 5: t
Método de cadena "CompareTo"
¿Quiero comprobar si la cadena 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 "compareTo" y especifique la cadena que le gustaría 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 de argumentos 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 cadena.
clase pública Sample_String {public static void main (String [] args) {// Comparar con una StringString str_Sample = "RockStar";System.out.println ("Comparar con 'ROCKSTAR': + str_Sample.compareTo ("rockstar"));// Comparar con - Ignorar mayúsculas y minúsculasSystem.out.println ("Comparar con 'ROCKSTAR' - Caso ignorado: + str_Sample.compareToIgnoreCase ("ROCKSTAR"));}}
Producción:
Compare To 'ROCKSTAR': -32Compare To 'ROCKSTAR' - Case Ignored: 0
Método de cadena "Contain"
Sé parcialmente lo que debería haber contenido la cadena, ¿cómo confirmo si la cadena contiene una secuencia de caracteres que especifico?
Utilice el método "contiene" y especifique los caracteres que necesita comprobar.
Devuelve verdadero si y solo si esta cadena contiene la secuencia especificada de valores de caracteres.clase pública Sample_String {public static void main (String [] args) {// Verifica si String contiene una secuenciaString str_Sample = "RockStar";System.out.println ("Contiene la secuencia 'tar': + str_Sample.contains ("tar"));}}
Producción:
Contains sequence 'tar': true
Método String "endsWith"
¿Cómo confirmo si una cadena termina con un sufijo en particular? De nuevo lo respondiste. Utilice el método "endsWith" y especifique el sufijo en los argumentos.
Devuelve verdadero si la secuencia de caracteres representada por el argumento es un sufijo de la secuencia de caracteres representada por este objeto.clase pública Sample_String {public static void main (String [] args) {// Verifica si termina con una secuencia particularString str_Sample = "RockStar";System.out.println ("Termina con el carácter 'r': + str_Sample.endsWith ("r"));}}
Producción:
EndsWith character 'r': true
Método de cadena "replaceAll" y "replaceFirst"
¿Quiero modificar mi String en varios lugares y reemplazar varias partes del String?
Java String Replace, replaceAll y replaceFirst métodos. Puede especificar la parte de la Cadena que desea reemplazar y la Cadena de reemplazo en los argumentos.
clase pública Sample_String {public static void main (String [] args) {// Reemplaza Rock con la palabra DukeString str_Sample = "RockStar";System.out.println ("Reemplazar 'Rock' con 'Duke': + str_Sample.replace ("Rock", "Duke"));}}
Producción:
Replace 'Rock' with 'Duke': DukeStar
String Java "tolowercase" y Java "touppercase" Método
¿Quiero que toda mi cadena se muestre en minúsculas o mayúsculas?
Simplemente use los métodos "toLowercase ()" o "ToUpperCase ()" contra las cadenas que deben convertirse.
clase pública Sample_String {public static void main (String [] args) {// Convertir a LowerCaseString str_Sample = "RockStar";System.out.println ("Convertir a LowerCase: + str_Sample.toLowerCase ());// Convertir a UpperCaseSystem.out.println ("Convertir a UpperCase: + str_Sample.toUpperCase ());}}
Producción:
Convert to LowerCase: rockstarConvert 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 String Constant Pool . Es por eso que String se puede inicializar sin la palabra clave "nueva".
- La clase String cae bajo la jerarquía java.lang.String . Pero no es necesario importar esta clase. La plataforma Java los proporciona automáticamente.
- La referencia de cadena se puede anular pero eso no elimina el contenido ; es decir, si
String h1 = "hola";
h1 = "hola" + "mundo";
entonces la cadena "hola" no se elimina. Simplemente pierde su control.
- Se pueden utilizar varias referencias para la misma cadena, pero se producirán en el mismo lugar ; es decir, si
String h1 = "hola";
String h2 = "hola";
String h3 = "hola";
entonces solo se crea un grupo para String "hola" en la memoria con 3 referencias-h1, h2, h3
- Si un número se cita entre "" , se convierte en una cadena , ya no en un número. Eso significa que si
String S1 = "El número es: + "123" + "456";
Sistema. out .println (S1);
luego imprimirá: El número es: 123456
Si la inicialización es así:
String S1 = "El número es: + (123 + 456);
Sistema. out .println (S1);
luego imprimirá: El número es: 579 ¡Eso es todo para Strings!