Почему следующий код Java snippet генерирует исключение StringIndexOutOfBoundsException в третьей строке кода?
String str = "1234567890";
String sub1 = str.substring(0, 3);
String sub2 = str.substring(4, 1);
Я ожидал, что результат приведенного выше кода будет таким, что sub1 содержит «123», а sub2 содержит «5», но вместо этого я получаю исключение, упомянутое выше. первый вызов подстроки оказал побочное действие на строку, над которой работает?