Dobbiamo creare stringhe continuamente per l'output del registro e così via. Nelle versioni JDK abbiamo imparato quando usare StringBuffer
(molti appendi, thread-safe) e StringBuilder
(molti appendi, non thread-safe).
Qual è il consiglio sull'uso String.format()
? È efficiente o siamo costretti a rimanere con la concatenazione per i one-liner in cui le prestazioni sono importanti?
ad es. brutto vecchio stile,
String s = "What do you get if you multiply " + varSix + " by " + varNine + "?";
vs. un nuovo stile ordinato (String.format, che è probabilmente più lento),
String s = String.format("What do you get if you multiply %d by %d?", varSix, varNine);
Nota: il mio caso d'uso specifico sono le centinaia di stringhe di registro "one-liner" nel mio codice. Non comportano un ciclo, quindi StringBuilder
è troppo pesante. Sono interessato in modo String.format()
specifico.