作业帮 > 综合 > 作业

C#中的单问号(?)和双问号(?)的作用以及使用的场合?

来源:学生作业帮 编辑:拍题作业网作业帮 分类:综合作业 时间:2024/04/30 08:33:54
C#中的单问号(?)和双问号(?)的作用以及使用的场合?
DateTime?TaskStartDate 这里的 ,你的理解是对的.这个?的作用,是让原本不支持null值的类型,可以取值为null,例如:DateTime 和 int 类型,本身是不能=null的,加了?,就可以=null了.
Milestone.IsTask false,这里的 叫做 “null 合并运算符”,它的用法是:
如果此运算符的左边的值不为 null,就返回左边的值;否则返回右边的值.
再问: 那么这个双问号和三元运算符(:?)的用法是不是一样的呢?他们之间有什么异同呢?
再答: 有些相近,不相同。 string a = (1==0) ? "a" : "b"; 这是三元运算符,三元运算符,应用于判断bool值,如果是true,返回 : 前面的值,否则,返回 : 后面的值。 ?? 只是判断 它左边的值是否是 null。