[ Foro de Java ]
Tengo condición
if (cultivos == "patatas"){
ejecuta sentencia
...
Nunca cumple la sentencia.
tengo:
import java.util.Scanner;
public class Main {
public stataic void main(String[] args) {
Scanner sc= new Scanner(System.in);
String cultivos;
String patatas;
int cantidad;
System.out.println("Quiero plantar");
cultivos = sc.nextLine();
System.out.println("Cuanto");
cantidad = sc.nextint();
if (cultivos == "patatas") {
int result =cantidad*30;
System.out.println(result);
} else {
System-out.println("Error");
}
}
Siempre se va por el ELSE y cultivos tiene el valor "patatas" una vez tecleado con consola.
¿ Me podéis decir que está mal ?
Muchas gracias
En Java no deberías comparar cadenas con "==", sino con ".equals".
(No se puede continuar esta discusión porque tiene más de dos meses de antigüedad. Si tienes dudas parecidas, abre un nuevo hilo.)