本文主要介绍如何在C#中使用可空运算符,具有一定的参考价值。有兴趣的朋友可以参考一下。希望大家NULL看完这篇文章收获多多。让边肖带你去了解它。
?.和?[]
空条件运算符在C#6之后可用,只有当操作数为非空时,才会访问成员或元素。然后呢。[]很容易区分;我们知道。是访问成员或生命空间或其他东西,'[]'索引器访问,下面演示了运算符的用法:
静态双?SumNumbers(list double[]setsofmounds,int indexOfSetToSum)
{
//如果setsOfNumbers不为空,则访问指定的索引;如果对应元素的索引不为空,则求和。
返回setsOfNumbers?[indexofsetosum]?sum();
}
var sum1=SumNumbers(null,0);
控制台。WriteLine(sum1?双倍。NaN);//输出: NaN
var NumberSets=new ListDouble[]{ new[]{ 1.0,2.0,3.0 },null };
var sum 2=SumNumbers(numberset,0);
控制台。WriteLine(sum2?双倍。NaN);//输出: 6
var sum 3=SumNumbers(numberset,1);
控制台。WriteLine(sum3?双倍。NaN);//输出: NaN
??
NUll合并运算符,什么意思?如果该值为空,请使用另一个值a。b,如果a非空,则结果为a;否则结果是B.操作仅在a为空时计算b。常见的场景如:使用throw表达式作为?运算符,检测数据,当采集为空时分配默认值,等等。
var comment=_blogService。GetBlogCommentById(id)
?Thrownnewargumentexception('指定的id是找到的对应数据!',name of(id));00-1010接线员?=是C#8.0中引入的null合并赋值运算符。你什么意思?也就是说,运算符只能在左操作数计算为null时使用?=用运算符将其值赋给左操作数。示例代码如下:
Listint numbers=null
int?i=null
数字?=new Listint();
数字。添加(I?=66);
数字。添加(I?=99);
//相当于下面的代码
//if (i==null)
//{
//I=66;
//数字。加(一.价值);
//}
//if (i==null)
//{
//I=99;
//}
//数字。加(一.价值);
控制台。WriteLine(字符串。Join(' ',numbers));//输出: 66 66
控制台。write line(I);//output: 66感谢您仔细阅读本文。希望边肖NULL分享的文章《如何在C#中使用可空运算符》对大家有所帮助。同时希望大家多多支持,关注行业信息渠道,多了解!
内容来源网络,如有侵权,联系删除,本文地址:https://www.230890.com/zhan/128603.html