C#6.0新特性

xiaoxiao2021-02-28  48

1、自动属性增强

1.1、自动属性初始化与只读属性初始化
public class Person { public string Name { get; set; } = "sandy"; public int Age { get; } = 20; }

2、用Lambda作为函数体 (Expression bodies on method-like members)

public class Person { public string FirstName { get; set; } public string LastName { get; set; } public override string ToString() => string.Format("{0}——{1}", FirstName, LastName); }

3、Lambda表达式用作属性 (Expression bodies on property-like function members)

public class Person { public string FirstName { get; set; } public string LastName { get; set; } public string FullName => FirstName + " " + LastName; }

4、字符串嵌入值 (String interpolation)

public class Person { public string FirstName { get; set; } public string LastName { get; set; } public string FullName =>$"{FirstName } {LastName }"; //上这两句等价 public string fName => string.Format("{0} {1}", FirstName, LastName); } class Program { static void Main(string[] args) { Person p = new Person(); p.FirstName = "a"; p.LastName = "b"; Console.WriteLine(p.FullName); Console.WriteLine(string.Format($"FirstName is {p.FirstName}")); //等价于如下 Console.WriteLine(string.Format("FirstName is {0}", p.FirstName)); } }

其他新特性以后在补充了。

所有不带着问题的努力,都是瞎忙

参考资料 1、C# 6.0那些事

转载请注明原文地址: https://www.6miu.com/read-75217.html

最新回复(0)