Sería un eufemismo decir que hacer comparaciones en la programación es una tarea común. Hay muchos tipos de comparaciones que puede hacer, desde lógicas hasta aritméticas e incluso comparaciones de tipos. En algunos casos, es posible que deba confirmar la longitud, el tamaño o el valor de un dato, como cadenas.
En esta publicación, aprenderá qué son las comparaciones de Java String, cómo usarlas y qué significa eso para usted. También aprenderá sobre los diferentes tipos de comparaciones centrándose en las comparaciones de igualdad. Finalmente, verá algunos ejemplos de código de sintaxis y cómo usar comparaciones para diferentes tareas.
Sin perder más tiempo, vamos al grano.
Cómo usar la igualdad en Java
Hay muchas formas de hacer comparaciones en Java, y hay dos cosas a tener en cuenta al comparar información, valor y tipo de datos. Esto puede facilitar mucho la planificación del software y el pseudocódigo, facilitando mejores prácticas de codificación.
Sin embargo, hay muchas formas de comparar cadenas entre sí, y estas son el método equals () y el operador de igualdad dual. Estos enfoques están destinados a cumplir el mismo propósito general; comparar dos cadenas entre sí. Sin embargo, cada enfoque compara diferentes aspectos de las cadenas.
Debido a la naturaleza de las cadenas de Java, debe tener en cuenta más de un aspecto de las cadenas. Por ejemplo, en Java, las cadenas son objetos, no primitivas para comparar valores o tipo de cadena. Incluso puede verificar si es la misma instancia de cadena que otra.
Veamos algunos ejemplos de comparación de valores de cadena y aprendamos cómo funciona.
Cómo verificar si una cadena es igual a otra cadena Java
Para valores de cadena, se puede usar cualquier enfoque para comparar dos cadenas diferentes. Sin embargo, se debe tener en cuenta una advertencia; el operador de doble igualdad también comparará una instancia de cadena. Esto es para decir; comprueba si la cadena está en el mismo lugar en el montón de memoria virtual de Java. El siguiente video muestra cómo funciona equals() y cómo hacer comparaciones con él.
Veamos un ejemplo de código que muestra cómo equals () compara valores de cadena.
public class Test {
public static void main(String[] args)
{
String grtng1 = "HELLO";
String grtng1Cpy = "HELLO";
String grtng2 = "ALOHA";
String grtngObjStr = new String("HELLO");
System.out.println(grtng1.equals(grtng1Cpy)); /*true*/
System.out.println(grtng1.equals(grtng2)); /*false*/
System.out.println(grtng1.equals(grtngObjStr)); /*true*/
}
}
Este bloque de código crea múltiples variables de cadena y las compara usando el método equals (). La primera comparación devuelve verdadero debido a valores idénticos, mientras que la segunda compara valores diferentes y devuelve falso. Finalmente, en la tercera comparación, el valor de ambas variables es idéntico, dando como resultado un retorno verdadero.
Debe entenderse aquí que el método equals () solo verifica el valor real de la cadena, ignorando otros aspectos de la cadena. Un ejemplo de un elemento que no está mirando es la ubicación de la memoria y el tipo de cadena. Así que ahora veamos un ejemplo de comparaciones de cadenas usando el operador de doble igualdad.
Es igual a Java a es igual a
El operador de doble igualdad es ligeramente diferente en el sentido de que también verifica la ubicación de la memoria en la cadena. Si el valor y la ubicación de la memoria son los mismos para las filas que se comparan, la condición devuelve verdadero; de lo contrario, devuelve falso. En el siguiente video, discutiremos la diferencia entre cómo se comportan estos dos métodos.
Por lo tanto, ninguna cadena creada con Nuevo la palabra clave devolverá verdadero en comparación con otra cadena, ya que tendrá su ubicación de memoria. Echemos un vistazo a este proceso y veamos cómo se ve en la siguiente sección.
Ejemplo de Java String es igual
El siguiente código es casi idéntico al bloque de código anterior con una gran diferencia. Esta vez las comparaciones se realizan utilizando el operador de doble igualdad. Como resultado de este cambio, los resultados de la comparación son diferentes.
class Test {
public static void main(String[] args)
{
String grtng1 = "HELLO";
String grtng1Cpy = "HELLO";
String grtng2 = "ALOHA";
String grtngObjStr = new String("HELLO");
System.out.println(grtng1 == grtng1Cpy); /*true*/
System.out.println(grtng1 == grtng2 ); /*false*/
System.out.println(grtng1 == grtngObjStr); /*false*/
}
}
La primera comparación se califica como idéntica, mientras que la segunda y la tercera se califican como diferentes. Esto se debe a que el operador de igualdad dual también verifica la ubicación de la memoria. Tanto el valor como la ubicación deben pasar por la comparación para que la comparación sea verdadera.
Introducción a las comparaciones de cadenas
Se ha discutido mucho en esta publicación, y con esta información, puede comenzar a comparar cadenas en su código de software. Hay otras formas de probar, desafiar y desarrollar conocimientos y comprender el proceso de comparación de cadenas.
Una nota final a considerar; las técnicas discutidas en esta publicación se pueden usar en otros tipos de datos. Esto se aplica a primitivas, objetos y mucho más. Puede continuar haciendo todo tipo de comparaciones para consolidar su comprensión de estas técnicas.








