南有乔木z

随心所欲,想写啥就写啥。

  博客园 :: 首页 :: 博问 :: 闪存 :: 新随笔 :: 联系 :: 订阅 订阅 :: 管理 ::

C#6.0的一些语法

一、Lambda表达式的一些运用

  1.在属性、方法中应用

  •   例如常规对属性的赋值:
public bool IsNavigation 
{
  get
  {
    return this._navigationDestination != null;   } }

  使用Lambda表达式进行属性赋值方法:

public bool IsNagivation => this._navigationDestaion != null; 

  •   给一个属性进行默认赋值:
public int DefaultValue {get; set;} = 100;
  •   属性Get和Set设置:

public double MaxDiff
{
  get => (double)GetValue();
  set => SetValue(value);
}    

 

二、?和??的应用

  1.?的应用

       C#语法中一个个问号(?)的运算符是指:可以为 null 的类型。

  在处理数据库和其他包含不可赋值的元素的数据类型时,将 null 赋值给数值类型布尔型以及日期类型的功能特别有用。例如,数据库中的布尔型字段可以存储值 true 或 false。

 或者,该字段也可以未定义。

  2.??的应用

  C#语法中两个问号(??)的运算符是指null 合并运算符,合并运算符为类型转换定义了一个预设值,以防可空类型的值为Null。

  ?? 运算符称为 null 合并运算符,用于定义可以为 null 值的类型和引用类型的默认值。如果此运算符的左操作数不为 null,则此运算符将返回左操作数(左边表达式);

否则当左操作数为 null,返回右操作数(右边表达式)。 

1 nt? x = null;//定义可空类型变量
2 int? y = x ?? 1000;//使用合并运算符,当变量x为null时,预设赋值1000
3 Console.WriteLine(y.ToString()); //1000

 

 

 

  

posted on 2019-01-08 22:11  南有乔木z  阅读(560)  评论(0编辑  收藏  举报