@SandPie

Почему массив с ограниченным количеством значений принимает больше чем должен?

Я совсем новичок в java, и как подобает всем начинающим, решил написать калькулятор, но ограниченный по символам. Так вот у меня есть массив, в котором всего 3 ячейки, но почему-то когда я в него добавляю 4-е значение, он мне не выдает ошибку, а просто добавляет все 4 значения в список, почему?
import java.util.Scanner;

public class test {
    public static void main(String[] args) {
        Scanner scanner = new Scanner(System.in);
        System.out.println("Enter the numbers to be counted:");
        String calc = scanner.nextLine();
        try {
            String[] subCalc = new String[3];
            subCalc = calc.split(" ");
            for (int i = 0; i < subCalc.length; i++) {
                System.out.println(subCalc[i]);
            }
        } catch (ArrayIndexOutOfBoundsException e) {
            System.out.println("Only 3 characters are allowed!");
            System.out.println("2 + 2 | Yes");
            System.out.println("2 + 2 + 2 | No");
        }
    }
}
  • Вопрос задан
  • 73 просмотра
Решения вопроса 1
sergey-gornostaev
@sergey-gornostaev Куратор тега Java
Седой и строгий
calc.split(" ") возвращает новый массив другого размера и затирает в переменной subCalc предыдущий.
Ответ написан
Пригласить эксперта
Ваш ответ на вопрос

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

Войти через центр авторизации
Похожие вопросы