Допустим, у меня есть две char
переменные, а позже я хочу объединить их в строку. Вот как бы я это сделал:
char c1, c2;
// ...
String s = "" + c1 + c2;
Я видел людей, которые говорят, что "трюк" "" +
"уродлив" и т. Д., И что вместо этого вы должны использовать String.valueOf
или Character.toString
. Я предпочитаю эту конструкцию, потому что:
- Я предпочитаю использовать языковую функцию вместо вызова API, если это возможно
- В общем, разве язык обычно не более стабилен, чем API?
- Если языковая функция скрывает только вызов API, то это еще более веская причина для ее выбора!
- Более абстрактно! Прятаться это хорошо!
- Мне нравится, что
c1
и c2
визуально находятся на одном уровне
String.valueOf(c1) + c2
предполагает что-то особенное в c1
- Это короче.
Есть ли хороший аргумент, почему String.valueOf
или Character.toString
предпочтительнее "" +
?
Пустяки: в java.lang.AssertionError
следующая строка появляется 7 раз, каждая с разным типом:
this("" + detailMessage);