Tengo el siguiente código
package Condicionales;
import java.util.Scanner;
public class PruebaJava {
public static void main(String[] args) {
/*float numero1;
float numero2;
float total;
*/Scanner lector = new Scanner(System.in);/*
System.out.println("Ingrese un valor numerico");
System.out.println("RECUERDA QUE PARA USAR DECIMALES USA ','");
numero1 = lector.nextFloat();
System.out.println("Ingrese un valor numerico X2");
numero2 = lector.nextFloat();*/
System.out.println("Escoja el tipo de operacion a realizar");
System.out.println("1. Suma");
System.out.println("2. Resta");
System.out.println("3. Multiplicacion");
System.out.println("4. Division");
System.out.println("Escriba el numero o tipo de operacion");
String tipoOperacion = lector.next();
if (tipoOperacion == "Suma" || tipoOperacion == "suma") {
System.out.println("Suma!!");
}
System.out.println("... " + tipoOperacion);
}
}
En la parte del if si ingreso "Suma" no se cumple la condición, pensé que posiblemente en la variable tipoOperacion se estaba guardando otra cosa, pero no, es exactamente "Suma" y el if no devuelve true
Tener en cuenta que si agrego el valor a la variable desde el código, funciona correctamente, pero cuando se deja que el usuario ingrese el valor, el if no devuelve true.