Мой профессор попросил нас сделать простой калькулятор для сложения и вычитания, но на входе должно быть целое выражение типа «5-5», «60 + 70» или «-8 + 10».
Scanner console = new Scanner(System.in);
int sum;
String expression = console.nextLine();
String[] split = expression.split("(?<=\\d)(?=\\D)|(?<=\\D)(?=\\d)");
int a = Integer.parseInt(split[0]);
int b = Integer.parseInt(split[2]);
String operator = split[1];
switch (operator) {
case "+":
sum = a + b;
System.out.println(sum);
break;
case "-":
sum = a - b;
System.out.println(sum);
break;
}
Это мой код, и он работает для первых двух примеров, но не для последнего, где первое целое число является отрицательным, например «-8 + 10», и нет, я не могу сделать это другим способом. Мне нужно ввести все выражение в одну строку.