C#中单问号,双问号的用法(转)
原文:http://hi.baidu.com/guodong828/blog/item/c78fc23f847314cb7d1e7193.html
单问号---用于给变量设初值的时候,给变量(int类型)赋值为null,而不是0;
双问号---用于判断并赋值,先判断当前变量是否为null,如果是就可以赋一个新值,否则跳过;
形式为“a??b”的空合并表达式要求a为可空类型(形如:int?)或引用类型。如果a为非空则表达式“a??b”返回的结果为a;否则返回b。
空合并运算符为右结合运算符,即操作时从右向左进行组合的。如,“a??b??c”的形式按“a??(bb??cc)”计算。
public int ? para;
// public int para;如果用此行替换上一行的话,下面会报错
public int par()
{
return this .para ?? 0 ;
}
本文详细介绍了C#中单问号和双问号的使用场景。单问号用于初始化变量时设置其默认值为null,而非0,适用于int?等可空类型。双问号则用于条件赋值,当左侧变量为null时,表达式返回右侧值,否则返回左侧值。文章通过示例代码展示了这些运算符的实际应用。

1万+

被折叠的 条评论
为什么被折叠?



