Próbuję zrozumieć, jakie są najlepsze praktyki i dlaczego należy łączyć literały ciągów i zmienne dla różnych przypadków. Na przykład, jeśli mam taki kod
StringBuilder sb = new StringBuilder("AAAAAAAAAAAAA")
.append(B_String).append("CCCCCCCCCCC").append(D_String)
.append("EEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEE")
.append("FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF");
Czy to jest sposób na zrobienie tego? W tym poście zauważyłem, że +
operator w Strings tworzy nową instancję StringBuilder, łączy operandy i zwraca konwersję typu String, która wydaje się być o wiele bardziej wymagająca niż zwykłe wywołanie .append()
; więc jeśli to prawda, to nie wchodzi w rachubę. Ale co z tym String.concat()
? Czy jest to właściwe .append()
dla każdego konkatenacji? A może tylko dla zmiennych, a literały można dołączyć .concat()
?
StringBuilder sb = new StringBuilder("AAAAAAAAAAAAA")
.append(B_String.concat("CCCCCCCCCCC")).append(D_String
.concat("EEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEE")
.concat("FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF"));
Jakie są ogólne zasady dotyczące najlepszych praktyk i wydajności w takich sytuacjach? Czy moje założenie jest słuszne +
i naprawdę nie powinno być używane?