C#中两个问号是什么意思 "??"

如 string s = a ?? b;

胡说叔叔
浏览 1120回答 2
2回答

慕少森

就是如果为null,则运行后面的,否则返回前面的。obj = obj1 ?? new Object()//等价于:if (obj == null)  obj = new Object();else  obj = obj1;

小唯快跑啊

可以理解为:为空判断赋值预算符!如果为空就将后面的表达式的值赋给它。如:int a=(page ?? 20) - 3;// page==null 时a=20-3=17// page!=null时a=page-3
打开App,查看更多内容
随时随地看视频慕课网APP