Извините, если это глупый вопрос, но я не могу найти объяснения.Почему привязка к String.trim() выбрасывает исключение?
У меня есть строка, как это:
String str ="This is 50 test. Try it !!";
Я хочу, чтобы получить число раз перед test
.
Если я:
str = str.substring(0, str.indexOf("test")).trim();
str = str.substring(str.lastIndexOf(" ")).trim();
System.out.println(str);
я получаю: "50"
Однако, если я это сделать:
str = str.substring(0, str.indexOf("test")).trim().substring(str.lastIndexOf(" ")).trim();
я получаю: Exception in thread "main" java.lang.StringIndexOutOfBoundsException: String index out of range: -13
Так как trim()
возвращает копию строка, ведущая и конечная пробел опущен, почему это исключение выбрано? Почему я не могу подключить свои методы к str
? Я не понимаю.
Ahh, спасибо. Понял ! – user2336315