Комментарии 6
метод String.substring всегда возвращает новую строку, далее по тексту
в лучшем при idx = 0 метод str.substring() вернёт строку, на которой он был вызван
Верно подмечено, вам плюс за внимательность. Я неверно выразил свою мысль: имел ввиду, что после одного из обновлений "семёрки", ЕМНИП, подстрока является новый строкой, а не проекцией на исходную.
А что касается выражений вроде str.substring(0)
или str.substring(0, str.length())
то факт возврата this
в этих случаях — это лишь особенность реализации, которая не прописана в документации.
Милота, километры кода, чтобы оптимально склеить две строки. Java, как же я рад, что я тебя бросил.
Чтобы оптимально склеить две строки достаточно написать
String result = str1 + str2;
В статье же описаны более сложные случаи.
Да конечно, потому что сейчас это оптимизированно, но оптимизации не будет если вы склейку делаете в цикле, и об этом важно помнить. Если говорить не о склейке, а об урезании передних пробелов, то тут тоже все мило и лампово. Пусть горят в пекле языки где можно просто вызвать метод " строка".lstrip()
и не заморачиваться.
Это не пост злости, или троллинг, это пост радости, за себя. Мир всем и процветание.
Ещё больше строковых оптимизаций