编程语言
首页 > 编程语言> > C#中的空结合运算符和运算符\u0026\u0026

C#中的空结合运算符和运算符\u0026\u0026

作者:互联网

有可能一起使用任何方式运算符?和运算符&&在下一个案例中:

bool? Any
{
   get
   {
      var any = this.ViewState["any"] as bool?;
      return any.HasValue ? any.Value && this.SomeBool : any;
   }
}

这意味着下一个:

>如果any为null则this.Any.HasValue返回false
>如果有任何值,则返回值,考虑另一个布尔属性,即Any&& SomeBool

解决方法:

我想知道为什么到目前为止没人提出这个建议:

bool? any = this.ViewState["any"] as bool?;
return any & this.SomeBool;

这回来了

> null如果any为null,则无论this.SomeBool的值是多少;
>如果any和this.SomeBool都是真的,则为true;和
> false如果any不为null,则this.SomeBool为false.

标签:c,boolean-logic,logical-operators,null-coalescing-operator
来源: https://codeday.me/bug/20190713/1445225.html