Проблема If\else в Java с проверкой
import java.util.Scanner;
public class Program { public static void main(String[] args){
Scanner in = new Scanner(System.in);
int c = 0;
for(int i = 1; i < 999; i++) {
//Ввод данных
System.out.print("\nInput number 1: ");
int a = in.nextInt();
in.nextLine();
System.out.print("Input Symbol: ");
String decor = in.nextLine();
System.out.print("Input number 2: ");
int b = in.nextInt();
// Проверка на спец.символ
switch (decor) {
case "+":
c = a + b;
break;
case "-":
c = a - b;
break;
case "*":
c = a * b;
break;
case "/":
c = a / b;
break;
default:
System.out.println("Error!");
break;
}
// Проверка на наличии спец символа и вывод на консоль
if(decor == "+" || decor == "-" || decor == "*" || decor == "/") {
System.out.println(a + " " + decor + " " + b + " = " + c);
}else{
System.out.println("Error!");
}
}
}
}
Код запускается всё супер, свитч тоже работает. Но при проверке if выходит ошибка в любом случае даже когда в decor хранится значение которое есть при проверке.
Input number 1: 5
Input Symbol: +
Input number 2: 5
Error!
Input number 1: