DEV Community 👩‍💻👨‍💻

Cover image for Stringhe interpolate e costanti
Marco Santoni
Marco Santoni

Posted on

Stringhe interpolate e costanti

Continuiamo in questo rapido post a vedere cosa è stato introdotto in .NET 6 e C# 10.

A partire da C# 6 è stata messa a disposizione di noi sviluppatori una funzionalità molto interessante per concatenare le stringhe, ovvero l'interpolazione di stringhe (o string interpolation in inglese). Grazie a lei è possibile costruire dinamicamente stringhe senza dover ricorrere all’uso degli operatori di concatenazione e/o ai metodi di oggetti come, per esempio, string.Concat o string.Format.

Ecco un esempio di come era già possibile sfruttare l’interpolazione di stringhe.

Console.Write("What's your name?"); 
var name = Console.ReadLine(); 

var msg = $"Hi, {name}!"; 
Console.WriteLine(msg); 
Enter fullscreen mode Exit fullscreen mode

Nell’esempio sopra proposto, si può capire come sia semplice “innestare” una stringa all’interno di un’altra stringa. È anche possibile comporre espressioni più complesse come mostrato qui di seguito.

Console.Write("What's your name?"); 
var name = Console.ReadLine(); 

var msg = $"Hi, {(name == "" ? "(no name)" : yourName)}!"; 
Console.WriteLine(msg); 
Enter fullscreen mode Exit fullscreen mode

Purtroppo, fino alla versione 9 di C# c’era una limitazione: non era possibile utilizzare l’interpolazione di stringhe con le costanti. Con C# 10 e .NET 6 però anche questa mancanza è stata colmata.

const string name = "Marco"; 
const string msg = $"Hi, {name}"; 
Enter fullscreen mode Exit fullscreen mode

In questo però caso sarà possibile “innestare” solo altre costanti.

Top comments (0)

🗣 Want to join the conversation?

It's easy! Become a DEV member to follow this post, comment, and more.