Tengo una variable de tipo String que se lee por teclado y mas tarde una condicion que se cumple cuando la cadena es igual a la palabra tren, pero introduciendo tren por teclado la condicion no se cumple por ke?. La condicion es esta if(cadena=="tren")
Alguien sabe ke es lo ke pasa?
if (TuVariableString.equalsIgnoreCase("tren"))
{
System.out.println("Iguales");
}
else
{
System.out.println("Distintas");
}
El IgnoreCase, hace que se coma las mayus y minus al comparar
Yo lo que ice fue coger mi variable String que metia por teclado y aplicarle el toLowerCase para poner todas las letras en minusculas, entronces metiera tren, TrEn o como fuera deberia reconocermelo no? pero no lo hace :S. De todas maneras probare como tu me has dicho haber si asi funciona
En Java los string son considerados como arrays de chars, por lo que la comparación debe hacerse usando alguno de los métodos de la clase string, como compareTo, charAt, equals, etc..
cadena1.equals(cadena2)
Uno de aplicacion directa....
import java.io.*;
public class comparar
{
public static void main(String[]args)throws IOException
{
InputStreamReader en = new InputStreamReader(System.in);
BufferedReader entrada = new BufferedReader(en);
System.out.println("Introduzca la palabra: ");
String cadena1;
cadena1 = entrada.readLine();
cadena1=cadena1.toLowerCase();
String cadena2="tren";
if (cadena1.equals(cadena2))
{
System.out.println("Iguales");
}
else{
System.out.println("Distintas");
}
}
}
[/i]