PRAIT
@PRAIT

Почему netBeans требует что бы я преобразовал цепочку операторов if в оператор switch?

При этом программа работает без ошибок. Вот код:
import java.util.Scanner;
public class SimpleCalculator {
  public static void main(String[] args) {
    System.out.println("Пожалуйста введите A");
    int a = new Scanner(System.in).nextInt();
    System.out.println("Пожалуйста введите B");
    int b = new Scanner(System.in).nextInt();
    System.out.println("Поажлуйста введите оператор {+,-,*,/}");
    char ch = new Scanner(System.in).nextLine().charAt(0);
    if (ch == '+') {
      System.out.println("a + b = " + (a + b));
    } else if (ch == '-') {
      System.out.println("a - b = " + (a - b));
    } else if (ch == '*'){
      System.out.println("a * b = " + (a * b));
    } else if (ch == '/') {
      System.out.println("a / b = " + (a / b));
    } else {
      System.out.println("Неподдерживаемый оператор: " + ch);
    }
  }
}


5c6b317399c35979853097.png
  • Вопрос задан
  • 149 просмотров
Решения вопроса 2
azerphoenix
@azerphoenix Куратор тега Java
Java Software Engineer
IDE не требует, а лишь рекомедует использовать switch case.
Так как у вас в данном случае задается правило для одной переменной char, то вы можете упростить читабельность вашего кода при помощи switch case.
Ответ написан
Комментировать
Работает без ошибок, потому что ошибок нет.
Switch в этом случае просто удобнее, компактнее и чуточку эффективнее благодаря таблице переходов.
Ответ написан
Комментировать
Пригласить эксперта
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы