Я новичок в java и этом форуме. Я написал код для простого калькулятора. Работает. Но как я могу повторить основной метод, если я (скажем) положил «=» вместо «(+, -, *, /)»? Должен ли я использовать цикл или что-то еще? Заранее спасибо!Повторение основного метода
import java.util.Scanner;
public class SimCal {
public static int add(int a, int b) {
return a + b;
}
public static int sub(int a, int b) {
return a - b;
}
public static int mul(int a, int b) {
return a * b;
}
public static int div(int a, int b) {
return a/b;
}
public static void main(String[] args) {
Scanner scan1 = new Scanner(System.in);
System.out.println("What do you want to do (+, -, *, /)? ");
String input1 = scan1.nextLine();
if (!input1.equals("+") && !input1.equals("-") && !input1.equals("*") && !input1.equals("/")) { // if wrong input given
System.out.println("You must Enter a valid operator");
} else {
Scanner scan2 = new Scanner(System.in);
System.out.println("Enter first number: ");
int input2 = scan2.nextInt();
Scanner scan3 = new Scanner(System.in);
System.out.println("Enter second number: ");
int input3 = scan3.nextInt();
if (input1.equals("+")) {
System.out.println(add(input2, input3));
} else if (input1.equals("/")) {
System.out.println(div(input2, input3));
} else if (input1.equals("-")) {
System.out.println(sub(input2, input3));
} else {
System.out.println(mul(input2, input3));
}
scan1.close();
scan2.close();
scan3.close();
}
}
}
Использовать корпус переключателя внутри во время цикла. –
Не создавайте несколько сканеров. Повторно используйте 'scan1' вместо' scan2' и 'scan3'. –