Метод substring(int begin, int end) выделяет подстроку от символа с индексом begin включительно до символа с индексом end исключительно. Длина подстроки будет равна end - begin .
Метод substring (int begin) выделяет подстроку от индекса begin включительно до конца строки.
Если индексы отрицательны, индекс end больше длины строки или begin больше чем end , то возникает исключительная ситуация.
Например, после выполнения
String s = "Write onсe, run anywhere.";
String sub1 = s.substring(6, 10);
String sub2 = s.substring(16);
получим в строке sub1 значение " once ", а в sub2 — значение " anywhere ".