- ASP.NET Core 2 High Performance(Second Edition)
- James Singleton
- 259字
- 2021-07-08 09:38:58
String interpolation
String interpolation is a more elegant and easier-to-work-with version of the familiar string format method. Instead of supplying the arguments to embed in the string placeholders separately, you can now embed them directly in the string. This is far more readable and less error-prone.
Let's demonstrate this with an example. Consider the following code that embeds an exception in a string:
catch (Exception e)
{
Console.WriteLine("Oh dear, oh dear! {0}", e);
}
This embeds the first (and in this case only) object in the string at the position marked by zero. It may seem simple, but it quickly gets complex if you have many objects and want to add another at the start. You then have to correctly renumber all the placeholders.
Instead, you can now prefix the string with a dollar character and embed the object directly in it. This is shown in the following code that behaves the same as the previous example:
catch (Exception e)
{
Console.WriteLine($"Oh dear, oh dear! {e}");
}
The ToString() method on an exception outputs all the required information, including the name, message, stack trace, and any inner exceptions. There is no need to deconstruct it manually; you may even miss things if you do.
You can also use the same format strings as you are used to. Consider the following code that formats a date in a custom manner:
Console.WriteLine($"Starting at: {DateTimeOffset.UtcNow:yyyy/MM/dd HH:mm:ss}");
When this feature was being built, the syntax was slightly different. So, be wary of any old blog posts or documentation that may not be correct.
- C++案例趣學
- Microsoft Exchange Server PowerShell Cookbook(Third Edition)
- Rust實戰(zhàn)
- 劍指JVM:虛擬機實踐與性能調優(yōu)
- Python爬蟲開發(fā):從入門到實戰(zhàn)(微課版)
- Raspberry Pi Networking Cookbook(Second Edition)
- Rust Cookbook
- Python數據分析(第2版)
- JavaScript從入門到精通(第3版)
- Unity 5.x By Example
- Learning Data Mining with R
- Android開發(fā):從0到1 (清華開發(fā)者書庫)
- C語言程序設計實訓教程與水平考試指導
- 監(jiān)控的藝術:云原生時代的監(jiān)控框架
- SQL Server 2008實用教程(第3版)