Оптимальная сборка строки

190
22 февраля 2018, 13:56

Как эффективней/целесообразней в Java собирать строку из частей? Через String.format()

String.format("DELETE FROM %s WHERE %s", table, cond)

или через StringBuider

builder.append("DELETE FROM ")
  .append(table)
  .append(" WHERE ")
  .append(cond).toString();

У format читабельность кода выше

Answer 1

String.format отработает медленнее чем вариант со StringBuider.

Если у вас Java 8 или выше, то можете написать:

"DELETE FROM " + table + " WHERE " + cond;

Компилятор такую простую конкатенацию внутри одного блока сам преобразует к вашему второму варианту со StringBuilder.

Answer 2

Если вы используете сборку строки в цикле с последующим склеиванием с предыдущей, то однозначно StringBuilder, если просто сообщение, тогда String.format().

READ ALSO
Android Studio, Error:A problem occurred configuring project ':app'. > Failed to find Build Tools revision 26.0.2

Android Studio, Error:A problem occurred configuring project ':app'. > Failed to find Build Tools revision 26.0.2

Скачал Android Studio, пытаюсь сбилдить пример по умолчанию, получаю ошибку:

256
Ejb совместно c Spring

Ejb совместно c Spring

Как в spinge использовать EJB классы

192
Очередь в ThreadPoolExecutor

Очередь в ThreadPoolExecutor

Насколько я понимаю, принципы создания новых потоков в ThreadPoolExecutor следующие:

207
Проблема со встраиванием в Webview видео с vimeo (embed)

Проблема со встраиванием в Webview видео с vimeo (embed)

В приложении нужно реализовать воспроизведение видео с youtube и vimeo, для решения этого вопроса был выбран Webview и вот этот примерС youtube всё отрабатывает...

230