Clase String en Java SE - Parte n°3. - Metodos, Funciones Comparación.
Función de Comparación de variables u objetos Strings .
Función: equals() Para la comparación de variables u objetos de tipo Strings, utilizamos el operador lógico == y la función miembro equals() de la clase String.
Con las siguientes instrucciones podremos distinguir la diferencia entre ellos:
String miString1="Hola Mundo"; String miString2=new String("Hola Mundo"); if(miString1==miString2){
System.out.println("Los mismos objetos u variables"); }else{ System.out.println("Distintos objetos u variables"); } if(miString1.equals(miString2)){ System.out.println("El mismo contenido/valor asignado"); }else{ System.out.println("Distinto contenido/valor asignado"); }
Estas instrucciones o código devolverá que la variable u objeto miString1 y miString2 son distintos objetos pero con el mismo contenido o valor asignado.Las variables u objetos miString1 y miString2 están almacenadas en diferentes posiciones en la memoria, sin embargo guardan el mismo valor o dato (“Hola Mundo”).
Otro Ejemplo:
String miString3="Hola Mundo";String miString4=miString3;System.out.println("Son el mismo objeto: Verdadero (true) o Falso (false): "+(miString3==miString4));
System.out.println("y tienen el mismo dato almacenado/asignado: "+(miString3));Las variables u objetos miString1 y miString2, almacenan o guardan la misma referencia al objeto de la clase String (Las dos son variables o tipos de objetos de tipo String). La instrucción o expresión (str1==str2) devolverá como resultado true.
El método o función equals() realiza una comparación de una variable u objeto de tipo String con un objeto o variable de cualquier tipo o también otra variable u objeto de tipo String, y como resultado devolverá como resultado trae. cuando las dos variables u objeto de tipo Strings son iguales o false si son diferentes.
La variable u objeto resultado tomará el valor true como resultado.
La variable resultado es de tipo boolean, este tipo de variable u objeto solo recibe como resultado o dato de asignación: trae o false.
Método o Función: compareTo().
La función miembro o el método compareTo(). Retorna o devuelve como resultado un número de tipo entero (Integer: int):
· Menor a cero si el objeto, variable o dato de tipo String es menor (en orden alfabético) que el String indicado como parámetro u argumento (entre comillas dobles).
· Cero si son iguales.
· Mayor que cero si la variable u objeto de tipo String (MiStringC) String es mayor que el String indicado como parámetro u argumento (entre comillas dobles).
String MiStringC="Juan"; int resultado=MiStringC.compareTo("Andres"); System.out.println(resultado);La variable entera resultado tomará un valor mayor que cero, ya que Juan está después de Andres en orden alfabético. (El carácter A tiene un valor menor al carácter B y así sucesivamente).
String MiStringC2="Andres";
int resultado2=MiStringC2.compareTo("juan");System.out.println(resultado2);
La variable entera resultado2 tomará un valor menor que cero, ya que Andres está antes que Juan en orden alfabético.
public class javaappstringcomparacion {
public static void main(String[] args) {
String miString1="Hola Mundo";
String miString2=new String("Hola Mundo");
if(miString1==miString2)
{
System.out.println("Los mismos objetos u variables");
}else
{
System.out.println("Distintos objetos u variables");
}
if(miString1.equals(miString2))
{
System.out.println("El mismo contenido/valor asignado");
}else
{
System.out.println("Distinto contenido/valor asignado");
}
String miString3="Hola Mundo";
String miString4=miString3;
System.out.println("Son el mismo objeto: Verdadero (true) o Falso (false): "+(miString3==miString4));
System.out.println("y tienen el mismo dato almacenado/asignado: "+(miString3));
//FUNCION O METODO compareTo()
String MiStringC="Juan";
int resultado=MiStringC.compareTo("Andres");
System.out.println(resultado);
String MiStringC2="Andres";
int resultado2=MiStringC2.compareTo("Juan");
System.out.println(resultado2);
}
}

Comentarios
Publicar un comentario