Penso che con string.Format()
sia più facile vedere quale sarà esattamente il risultato (quindi non hai problemi con gli spazi dimenticati o qualcosa del genere), ed è anche più facile da digitare e modificare.
Se vuoi fare una formattazione molto semplice, usare l'operatore +
plus potrebbe essere più semplice, ma io tendo ad usarlo solo quando concatenando due stringhe, non di più.
Per mostrare come string.Format()
è più facile da modificare, considera che volevi aggiungere un punto alla fine della frase nell'esempio: passando da string.Format("The int is {0}", i)
a string.Format("The int is {0}.", i)
è solo un carattere. Ma passare da "the int is " + i
a "the int is " + i + '.'
è molto di più.
Un altro vantaggio di string.Format()
è che ti consente di specificare facilmente il formato da utilizzare, ad esempio string.Format("The int is 0x{0:X}.", i)
. Questo è ancora più importante quando si formatta la data.
Per quanto riguarda l'efficienza, string.Format()
è molto probabilmente più lento di semplici concatenazioni di stringhe. Ma il codice come questo è molto probabilmente non su un percorso caldo, quindi non importa. E se lo fa, probabilmente stai meglio usando StringBuilder
.