c#:?的使用

今天看到一段代码

public ActionResult New(Guid? id, FormCollection collection)

参数里面怎么有个问号,还不报错,查一下才知道?的几种用法

  1. 引用类型可以为null,值类型不能为null,但是如果想让值类型为null的话可以加上?
    比如
int? a = null;
public void Test(int? b)
  1. 三元运算符
  2. 空合并运算符(右结合操作符)
char? a1 = null;
char b1 = 'b';
Console.WriteLine(a1??b1);
char a2 = 'a';
char b2 = 'b';
Console.WriteLine(a2??b2);

结果第一个输出b1的值,第二个输出b2的值。
a??b 如果a为空则等于b,否则等于a。

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章