Как стать автором
Обновить
14
0
Алексей Супрун @ASuprun

Пользователь

Отправить сообщение
Маленькое уточнение по поводу оператора "+". Как с казано в документации к Oracle JDK 6, 7 и 8, реализация этого оператора сделана с использованием StringBuilder:

The Java language provides special support for the string concatenation operator ( + ), and for conversion of other objects to strings. String concatenation is implemented through the StringBuilder(or StringBuffer) class and its append method. String conversions are implemented through the method toString, defined by Object and inherited by all classes in Java.
(ссылка на v8)

Что также отражено в спецификации:
An implementation may choose to perform conversion and concatenation in one step to avoid creating and then discarding an intermediate String object. To increase the performance of repeated string concatenation, a Java compiler may use the StringBuffer class or a similar technique to reduce the number of intermediate String objects that are created by evaluation of an expression.

For primitive types, an implementation may also optimize away the creation of a wrapper object by converting directly from a primitive type to a string.
(ссылка)

Эта тема также поднималась на StackOverflow и там был детально описан процесс конкатенации (ссылка).
Ну то что в Java 8 bucket — бинарное дерево — не совсем верно. Потому как деревом он становится только в том случае, если его размер больше TREEIFY_THRESHOLD. Причём данный процесс оборотный, то есть если по каким-то причинам bucket становится снова меньше, то он возвращается к «плоской» структуре (односвязный список). Но, так как в данной статье не объясняется внутреннее устройство коллекций, то для того чтобы связно изложить этот материал, прийдётся углубляться, что не помещается в рамки этого поста.

Но Ваше замечание действительно достойное внимания, потому считаю, что лучшим решением будет уточнить актуальность ссылки. Что и сделано.
Всё дело в том, что статья и так получилась довольно объёмная. А нововведения и изменения Collections Framework в Java 8 — это материал для другой вполне самодостаточной статьи. Тем более что целью статьи было всё же создать лаконичный справочник-памятку, а не подробный анализ.
Как было сказано в начале, статья — не является подробным обзором, а лишь краткий справочник. И, как Вы могли заметить, я указал эти статьи в качестве дополнительного материала для более детального ознакомления
Да, я тоже думаю, что таблица не помешает. Как раз сейчас работаю над этим
Дело в том, что все источники, которые были использованы в статье — указаны. Статья самописная и копипаста не имеет.
Спасибо за правку. Действительно немного напутал. Исправил

Информация

В рейтинге
Не участвует
Откуда
Украина
Дата рождения
Зарегистрирован
Активность