📅  最后修改于: 2023-12-03 14:40:28.348000             🧑  作者: Mango
在C#6.0中,引入了一个新特性:“字符串插值”,原名为“插入表达式”,是用来简化字符串组成的语法糖。
字符串插值就是在文本字符串中插入表达式的技术,它可以让我们更方便的构建字符串,减少了字符串通过"+"拼接的复杂度。
在字符串前面添加"$"符号,然后用大括号括起表达式部分即可使用字符串插值:
string name = "World";
var message = $"Hello, {name}!";
Console.WriteLine(message); // 输出:Hello, World!
在上面的代码中,我们使用字符串插值来避免了字符串拼接的复杂度,更直观的描述了我们的意图。
我们也可以使用格式化字符串在字符串插值中实现更复杂的输出:
decimal price = 123.45m;
var message = $"The price is {price:C2}.";
Console.WriteLine(message); // 输出:The price is $123.45.
在上面的代码中,我们使用"{price:C2}"格式化字符串,表示要输出货币格式。
字符串插值也可以引用对象的属性和方法,如下:
public class Person
{
public string Name { get; set; }
public int Age { get; set; }
public string GetGreeting() => $"Hello, I'm {Name}.";
}
var person = new Person { Name = "Tom", Age = 28 };
var message = $"{person.GetGreeting()} I'm {person.Age} years old.";
Console.WriteLine(message); // 输出:Hello, I'm Tom. I'm 28 years old.
在上面的代码中,我们使用了"{person.GetGreeting()}"引用Person对象中的GetGreeting()方法,"{person.Age}"引用Person对象中的Age属性。
C#6.0中的字符串插值让字符串构建更简洁、更可读、更易维护,是我们在C#开发中必不可少的技术。