String.EMPTY
- 12 символов, ""
- два, и они оба будут ссылаться на один и тот же экземпляр в памяти во время выполнения. Я не совсем уверен, почему String.EMPTY
сэкономит время компиляции, на самом деле я думаю, что это будет последний вариант.
Особенно с учетом того, что String
являются неизменяемыми, вы не можете сначала получить пустую строку и выполнить с ней некоторые операции - лучше всего использовать StringBuilder
(или StringBuffer
, если вы хотите быть потокобезопасными ) и превратить это в строку.
Обновление
Из вашего комментария на вопрос:
Что вдохновило это на самом деле
TextBox.setText("");
Я полагаю, что было бы вполне законно предоставить константу в вашем соответствующем классе:
private static final String EMPTY_STRING = "";
А затем ссылаться на него как в вашем коде как
TextBox.setText(EMPTY_STRING);
Таким образом, по крайней мере, вы явно указали, что хотите пустую строку, а не забыли заполнить строку в вашей IDE или что-то подобное.