Junior — Middle
Aké sú rozdiely medzi triedami String a StringBuilder v Jave a v ktorých prípadoch je vhodnejšie použiť každú z nich?
sobes.tech AI
Odpoveď od AI
V Jave predstavuje trieda String nemenný (immutable) reťazec. Každýkrát, keď sa reťazec mení, vytvorí sa nový objekt, čo môže byť neefektívne pri viacerých operáciách spájania.
StringBuilder je meniaci (mutable) buffer znakov, ktorý umožňuje efektívne meniť reťazec bez vytvárania nových objektov.
Kedy použiť:
String— keď sa reťazec nemení po jeho vytvorení alebo zmeny sú minimálne.StringBuilder— pri častých zmenách reťazca, napríklad v slučkách, pri zostavovaní veľkých reťazcov.
Príklad:
StringBuilder sb = new StringBuilder();
for (int i = 0; i < 10; i++) {
sb.append(i).append(", ");
}
String result = sb.toString();