StringBuilder. Замена () более эффективный, чем Строка. Замена?

Я видел верхние голосовые ответы, но я обнаружил, что это немного отличается от этого, я стараюсь сделать самый полный учебник.

В Android Studio нажмите значок шестеренки (Gears icon ] [/g4]), а затем выберите опцию: "Compact Empty Middle Packages", чтобы увидеть папки, разделенные в древовидном представлении.

Теперь выберите , щелкните правой кнопкой мыши, чтобы открыть контекстное меню, выберите Refactor, а затем Rename

Вам будет предложено реорганизовать пакет:

Затем в окне отобразятся совпадения внутри объекта, выберите "Do Refactor":

Нам не нужно вручную изменять файлы AndroidManifest.xml или build.gradle, рефакторинг пакета выполнит эту работу !.

28
задан hangy 14 November 2008 в 22:45
поделиться

3 ответа

Это - точно тип вещи, которая StringBuilder для - повторенная модификация того же текстового объекта - это не только для повторной конкатенации, хотя это, кажется, то, для чего это используется обычно.

29
ответ дан Michael Burr 14 October 2019 в 11:20
поделиться

Это зависит, если размер замены больше, чем замененная строка.

StringBuilder выделяет свой буфер , тогда как строка только когда-либо содержит, как когда-либо много символов находятся в нем.

StringBuilder. Свойство Capacity - то, сколько символов буфер будет содержать, в то время как StringBuilder. Длина состоит в том, сколько символов используется.

Обычно необходимо установить StringBuilder. Способность к значению, больше тогда ожидаемая результирующая строка. Иначе StringBuilder должен будет перераспределить свой буфер. , Когда StringBuilder перераспределяет свой буфер, он удваивает его в размере , что означает после того, как пара перераспределяет его, вероятно, значительно больше тогда, это должно быть, способностью по умолчанию запускает по телефону 16.

By, устанавливающий Полное значение, когда Вы запускаете (в конструкторе, например), Вы сохраняете перераспределения буфера StringBuilder. Можно использовать StringBuilder. MaxCapacity для ограничения максимальной способностью, до которой может быть расширен StringBuilder.

9
ответ дан David Grant 14 October 2019 в 11:20
поделиться

Да, это. String.Replace всегда создает новую строку †“StringBuilder.Replace, не делает.

5
ответ дан Konrad Rudolph 14 October 2019 в 11:20
поделиться
Другие вопросы по тегам:

Похожие вопросы: