在三元运算符中将可空int赋值给int
本文关键字:int 赋值 运算符 三元 | 更新日期: 2023-09-27 18:04:21
我有一个class
,说
class Test
{
int? a;
int b;
}
现在我正在创建一个对象test class
Test objTest = new Test();
objTest.b = objTest.a;
这里抛出错误cannot implicitly convert int? to int
。
所以我想出了解决办法
objTest.b = ObjTest.a ?? 0;
在这里可以工作,但是!!
objTest.b = objTest.a == null ? 0 : objTest.a
失败. .
为什么基本上都做相同的checking null value and assign value accordingly
在第二个示例中,您仍然需要将a
强制转换为int类型。
objTest.b = objTest.a == null ? 0 : (int)objTest.a
将编译。但是按照你想到的第一种方法来做。