Скажем, у меня есть две переменные 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);