Student s = null;
var na = s?.Sname ?? "无名";
MessageBox.Show(na);
s = new Student { Sname = "张三" };
na = s?.Sname ?? "无名";
MessageBox.Show(na);
//另一种场景
List<Student> lst = new List<Student>();
lst.Add(new Student { ID=1,Sname="张三"});
lst.Add(new Student { ID = 2, Sname = "李四" });
var finds=lst.Where(p => p.Sname == "王五").FirstOrDefault(); //finds可能为空
int sid = (finds == null) ? 0 : finds.ID;
//上面二句可以简化为
int sid = lst.Where(p => p.Sname == "王五").FirstOrDefault() ?. ID ?? 0;
Null条件运算符和null接合操作符的结合使用案例(在linq查询结果中常用)
最新推荐文章于 2022-11-04 19:37:42 发布