java string compareto method with programming examples
En este tutorial, aprenderemos sobre el método compareTo () de Java String y veremos cómo y cuándo usar compareTo en Java junto con la sintaxis y los ejemplos:
Comprenderá cómo manipular Java String con la ayuda del método compareTo () Java. Los tipos de salida que obtendremos a través del método compareTo () de Java también se cubrirán en este tutorial.
Después de leer este tutorial, definitivamente podrá comprender y escribir los programas Java String que requieren el método .compareTo () para la manipulación de String.
=> Consulte la guía de formación de Java perfecta aquí.
Lo que vas a aprender:
Método Java String compareTo ()
El método compareTo () de Java String se utiliza para comprobar si dos cadenas son idénticas o no. Como sugiere el nombre, compara dos cadenas dadas y descubre si son iguales o cuál es mayor.
El tipo de retorno del método compareTo () de Java es un número entero y la sintaxis se da como:
|_+_|En la sintaxis anterior, str es una variable de cadena que se compara con la cadena de invocación.
Por ejemplo: String1.compareTo (String2);
Otra variación de Java compareTo () es
|_+_|En la sintaxis anterior, compararemos una cadena con un objeto obj.
Por ejemplo ,String1.compareTo ('Este es un objeto de cadena');
Aquí, “Este es un objeto de cadena” es un argumento que le estamos pasando a compareTo () y lo compara con String1.
Tipos de salida del método compareTo () de Java
La salida tiene tres tipos que se basan en el valor de salida.
A continuación se muestra la tabla que explica los tres tipos de valores de salida.
compareTo () Valor de salida | Descripción |
---|---|
Cero | Dos cadenas son iguales. |
Mayor que cero | La cadena de invocación es mayor que str. |
Menos que cero | La cadena de invocación es menor que str. |
Comprendamos estas tres variantes en detalle con la ayuda de un ejemplo.
Un ejemplo de programación
Aquí hay un ejemplo del método de Java compareTo (). La comparación se basa en la diferencia en el valor ASCII de los caracteres. En términos generales, una cadena es menor que la otra si está antes que la otra en el diccionario.
|_+_|Producción:
Explicación del ejemplo
En el ejemplo anterior, tomamos cinco cadenas de entrada y realizamos una comparación básica entre ellas usando el método Java .compareTo (). En la primera comparación, tenemos 'A' mayor que 'G' por 6 caracteres en la serie alfabética, por lo que devuelve +6. En la segunda comparación, tenemos 'C' más pequeño que 'A' por 2 caracteres, por lo que devuelve -2.
En la última comparación (entre str1 y str5), como ambas cadenas son iguales, devuelve 0.
Varios escenarios
Entendamos el método .compareTo () en detalle. Aquí intentaremos analizar diferentes escenarios y la salida de cada caso.
Escenario 1: Considere las siguientes dos cadenas. Los compararemos y veremos el resultado.
String str1 = 'Prueba de software';
String str2 = “Ayuda para pruebas de software”;
¿Cuál será la salida de str1.compareTo (str2)?
Responder: Como str2 contiene 5 caracteres (un espacio + cuatro caracteres) más que la primera Cadena. La salida debe ser -5. De manera similar, cuando comparamos str2 con str1, la salida debería ser +5.
|_+_|Producción:
Escenario 2: Considere las siguientes dos cadenas. Los compararemos y veremos el resultado.
String str1 = “”;
String str2 = ”“;
como crear una lista java
¿Cuál será la salida de str1.compareTo (str2)?
Responder: Como str2 contiene un carácter (espacio) más que str1, debería dar el resultado como -1.
|_+_|Producción:
Escenario 3: Considere las siguientes dos cadenas. Los compararemos y veremos el resultado.
String str1 = 'SAKET';
String str2 = 'saket';
¿Cuál será la salida de str1.compareTo (str2)?
Responder: Aquí las cadenas son iguales pero str1 tiene mayúsculas mientras que str2 tiene minúsculas. Esta fue la limitación del método compareTo () de Java. La salida que obtendremos será distinta de cero. Para superar este problema, Java introdujo otra variación del método .compareTo () que es
.compareToIgnoreCase()
|_+_|Producción:
Método Java String compareToIgnoreCase ()
Como hemos discutido el problema en la discrepancia de casos (Escenario3), ya tenemos otra variante del método .compareTo () que ignorará la discrepancia de mayúsculas y minúsculas de las cadenas.
La sintaxis de este método se da como
|_+_|Todo lo demás permanece igual excepto el hecho de que .compareToIgnoreCase () no toma en consideración la discrepancia de mayúsculas y minúsculas.
Un ejemplo de programación
Aquí hay un ejemplo del método de Java compareTo (). En este ejemplo, hemos ilustrado la diferencia en las salidas de Java compareTo () y compareToIgnoreCase (). Java compareTo () dará una diferencia de -32 mientras que compareToIgnoreCase () dará una diferencia de 0.
|_+_|Producción:
Explicación del ejemplo:
En el ejemplo anterior, hemos tomado dos cadenas que tienen el mismo valor manteniendo una cadena en mayúsculas y otra en minúsculas. Ahora, un método Java .compareTo () proporcionará resultados basados en la diferencia ASCII en el valor de Minúsculas y Mayúsculas, ya que tomará en consideración el caso del carácter.
Pero Java .compareToIgnoreCase () no tomará en consideración el caso del carácter y dará un resultado como 0, lo que significa que ambas cadenas son iguales.
Preguntas frecuentes
P # 1) ¿Cuál es la diferencia entre ==, equals y .compareTo ()?
Respuesta: A continuación se enumeran las principales diferencias entre ==, equals () y compareTo ().
!¡ERROR! operador inesperado '=' | es igual a () | comparar con() |
---|---|---|
!¡ERROR! operador inesperado '=' | equals () es un método. | compareTo () es un método. |
!¡ERROR! operador inesperado '=' | El método equals () hace la comparación de contenido. | compareTo () hace la comparación según el valor ASCII. |
El tipo de retorno es booleano. | El tipo de retorno es booleano. | El tipo de retorno es Integer. |
Utiliza la referencia de la variable String, por lo que las direcciones de memoria deben ser las mismas al comparar. | No requiere que los objetos estén ordenados lógicamente. | Requiere que los objetos estén ordenados lógicamente. |
Aquí hay un ejemplo de programación que ilustra la diferencia.
|_+_|Producción:
P # 2) ¿El método compareTo () de Java distingue entre mayúsculas y minúsculas?
Responder: Si. El método Java .compareTo () considera los caracteres en mayúsculas y minúsculas y es sensible a mayúsculas y minúsculas.
A continuación se muestra la ilustración.
|_+_|Producción:
mejor programa para convertir archivos de video
Q #3) ¿Cómo funciona compareTo () en Java?
Responder: El método compareTo () de Java en realidad compara los valores ASCII de los caracteres de una cadena.
Digamos que vamos a comparar una coma y un espacio usando el método .compareTo (). Como sabemos, un carácter de espacio tiene un valor ASCII 32 mientras que una coma tiene un valor ASCII 44. La diferencia entre el valor ASCII del espacio y la coma es 12.
A continuación se muestra el ejemplo de programación.
|_+_|Producción:
P # 4) ¿Cómo encontrar la longitud de una cadena usando el método Java .compareTo ()?
Responder: A continuación se muestra el programa para encontrar la longitud de una cadena utilizando el método Java .compareTo ().
En este ejemplo, hemos tomado un String cuya longitud tenemos que encontrar y un String vacío. Luego hemos comparado el String con el String vacío. La diferencia entre ellos será la longitud de la Cadena.
|_+_|Producción:
P # 5) ¿Qué devuelve el método compareTo?
Responder: El tipo de retorno del método compareTo () de Java es un entero. El valor entero puede ser cero, entero positivo o entero negativo.
Conclusión
En este tutorial, hemos entendido en detalle el método Java String compareTo (). La funcionalidad básica, los detalles sobre la implementación y el uso, especialmente los ejemplos de programación, se proporcionaron para una mejor comprensión del concepto relacionado con el método String compareTo ().
Leer también = >> Interfaces comparables y comparativas de Java
Con este método, puede comparar dos cadenas y muchos otros usos o áreas de aplicación, como encontrar la longitud de la cadena también es posible con la ayuda del método compareTo () que se ha cubierto en las preguntas frecuentes.
=> Visite aquí para ver la serie exclusiva de tutoriales de capacitación en Java.
Lectura recomendada
- Tutorial de cadenas de Java | Métodos de cadena de Java con ejemplos
- Método Java String Split () - Cómo dividir una cadena en Java
- Tutorial de Java String con String Buffer y String Builder
- Funciones de cadena de Python
- Matriz de cadenas de Java: tutorial con ejemplos de código
- Interfaz ListIterator en Java con ejemplos
- Tutorial de interfaz Java y clase abstracta con ejemplos
- OOP Java: Introducción a la programación orientada a objetos en Java