Я пытаюсь понять, что такое лучшая практика, и почему для конкатенации строковых литералов и переменных для разных случаев. Например, если у меня есть код вроде этого
StringBuilder sb = new StringBuilder("AAAAAAAAAAAAA")
.append(B_String).append("CCCCCCCCCCC").append(D_String)
.append("EEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEE")
.append("FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF");
Это способ сделать это? Из этого сообщения я заметил, что оператор +
в Strings создает новый экземпляр StringBuilder, объединяет операнды и возвращает преобразование String, которое кажется много больше работы, чем просто вызов .append()
; так что если это правда, то это не может быть и речи. Но как насчет String.concat()
? Правильно ли использовать .append()
для каждой конкатенации? Или просто для переменных, а литералы можно добавить с помощью .concat()
?
StringBuilder sb = new StringBuilder("AAAAAAAAAAAAA")
.append(B_String.concat("CCCCCCCCCCC")).append(D_String
.concat("EEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEE")
.concat("FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF"));
Каковы общие правила наилучшей практики и производительности для этих ситуаций? Является ли мое предположение правильным на +
, и его действительно просто не использовать?