Ich versuche zu verstehen, was die beste Vorgehensweise ist und warum String-Literale und -Variablen für verschiedene Fälle verkettet werden. Zum Beispiel, wenn ich solchen Code habe
StringBuilder sb = new StringBuilder("AAAAAAAAAAAAA")
.append(B_String).append("CCCCCCCCCCC").append(D_String)
.append("EEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEE")
.append("FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF");
Ist das der Weg, es zu tun? In diesem Beitrag habe ich festgestellt, dass der +
Operator für Strings eine neue Instanz von StringBuilder erstellt, die Operanden verkettet und eine String-Konvertierung zurückgibt. Dies scheint viel mehr Arbeit zu bedeuten als nur aufzurufen .append()
. Wenn das stimmt, kommt das nicht in Frage. Aber was ist mit String.concat()
? Ist es richtig, .append()
für jede Verkettung zu verwenden? Oder nur für Variablen, und es ist in Ordnung, Literale anzuhängen .concat()
?
StringBuilder sb = new StringBuilder("AAAAAAAAAAAAA")
.append(B_String.concat("CCCCCCCCCCC")).append(D_String
.concat("EEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEE")
.concat("FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF"));
Was sind die allgemeinen Regeln für Best Practices und Leistung, um diese Situationen zu bewältigen? Ist meine Annahme richtig auf+
und sollte sie wirklich einfach nicht verwendet werden?