Понедельник, 2025-07-14, 03:47:47
Главная Регистрация RSS
Приветствую Вас, Гость
Форма входа
Мини-чат
Главная » 2011 » Сентябрь » 25 » String или StringBuffer
03:15:53
String или StringBuffer
Какой нам выбрать класс для подсчета статистки в [url=http://javac.at.ua/forum/3-19-1]подсчет слов\букв в текстовом файле[/url] в большом текстовом файле String или StringBuffer ?

Объект String просто хранит массив символов и предоставляет методы для исполнения операций на этом массиве.

Положительно что String - также единственный объект, который перегружает оператор конкатенации "+". Это позволяет строковым быть созданными конкатенацией одного или нескольких объектов String.
Однако String - неизменные значения, однажды созданные они не могут изменяться!! Всякий раз, когда Вы переназначаете значение строковой переменной, вы на самом деле создаете другой объект String и сообщаете JVM, что нужно использовать недавно созданный объект String как (placeholder) для переменной.

Отрицательно, что каждый раз, когда значение этой строковой переменной изменяется, должен быть создан новый объект String. Это приведет к созданию нескольких объектов String в памяти, ожидающим сборку "мусора". Не упоминая даже о дополнительной нагрузке на ЦП при создании этих новый объектов.

Объект StringBuffer тоже хранит массив символов, но с некоторыми тонкими различиями.

В нем не перегружен метод конкатенации "+".
Его содержимое может быть изменено без создания новых экземпляров объекта StringBuffer.
Просмотров: 600 | Добавил: CHerry
Всего комментариев: 0
Добавлять комментарии могут только зарегистрированные пользователи.
[ Регистрация | Вход ]