Comparar cadenas con Java

Por José Luis Garrido, el 11 de Enero del 2017

Hace poco tiempo descubrí que no se pueden comparar cadenas en Java con el doble igual tradicional (hay situaciones en las que sí como que las dos variables String sean referencias al mismo objeto)

Para esto, un compañero de clase me comentó que la clase String tenía dos métodos para comparar cadenas, estos son comparteTo y compareToIgnoreCase aunque también se puede hacer con la función equals aunque está funciona de manera distinta.

Tanto compareTo como comparteToIgnoreCase funcionan de manera similar a la función de C strcmp y strncmp de string.h. Así, si son iguales devuelve 0, si la cadena es más pequeña que la pasada por parámetro devuelve un número menor de 0, tanto menor como la diferencia entre las dos cadenas, si por su lado es mayor la cadena que la pasada por parámetro entonces la diferencia es positiva. Con equals pasa algo distinto, equals no solo es una función para comparar cadenas si no para comparar que dos objetos, sean cuales sean tienen los mismos valores, para ello devuelve true si son iguales y false si no.

A continuación varios ejemplos.

String cad1=scan.nextLine();
String cad2=scan.nextLine();
if(cad1.comparteTo(cad2)>0){
  System.out.print(cad1 + " es más grande que " + cad2);
}
if(args[0].equals(OPCION1) || args[0].comparteToIgnoreCase(OPCION1)==0{
  funcion1();
}

Para más información visita https://docs.oracle.com/javase/8/docs/api/java/lang/String.html

¿Te gustó el artículo? Dale like, opina, o comparte ;)

Artículos relacionados

Dame tu voto en HispaBloggers!
Los +1 gustan ;)

Conoce nuestros otros proyectos personales fácilmente entrando en proyecto.jkanetwork.com



Aprender PHP+mysql fácil - Episodio...
[Info] Apk eliminables y no eliminables...
MIRAI NIKKI , sinopsis y...
[Review+Firm] Movil OCU por menos de...

Blogs recomendados



Preferiríamos aceptar donaciones de la gente en vez de usar publicidad, ya que hay que pagar los gastos de un servidor 24/7. ¿No tienes bitcoin? Tutorial de intercambio

Coobis

¿Quieres decirnos algo? Mándanos tus ideas y sugerencias por e-mail, facebook, twitter. Estaremos encantados de oirlas :)