C#中可为NULL的运算符怎么用

技术C#中可为NULL的运算符怎么用这篇文章主要介绍了C#中可为NULL的运算符怎么用,具有一定借鉴价值,感兴趣的朋友可以参考下,希望大家阅读完这篇文章之后大有收获,下面让小编带着大家一起了解一下。?.和?[]null条

本文主要介绍如何在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

(0)

相关推荐

  • postgresql联表如何创建(postgresql动态添加过滤条件)

    技术用sequoiasql-postgresql创建一个关联表怎么优化本篇内容介绍了“用sequoiasql-postgresql创建一个关联表怎么优化”的有关知识,在实际案例的操作过程中,不少人都会遇到这样的困境,接下

    攻略 2021年12月22日
  • VUE3 之 template 语法

    技术VUE3 之 template 语法 VUE3 之 template 语法1. 概述
    老话说的好:干一行,爱一行,踏实工作才是真正快乐的源泉。言归正传,今天继续聊 VUE3 的话题,今天聊聊temp

    礼包 2021年12月16日
  • 589. N 叉树的前序遍历

    技术589. N 叉树的前序遍历 589. N 叉树的前序遍历给定一个 N 叉树,返回其节点值的 前序遍历 。
    N 叉树 在输入中按层序遍历进行序列化表示,每组子节点由空值 null 分隔(请参见示例)

    礼包 2021年12月20日
  • 新买服务器 设置ssh秘钥登录

    技术新买服务器 设置ssh秘钥登录 新买服务器 设置ssh秘钥登录新增用户
    useradd -m youusername
    设置密码
    passwd youusername
    校验密码
    cat /etc/pa

    礼包 2021年11月10日
  • catboost特征学习(catboost详细使用教程)

    技术怎么使用CatBoost进行快速梯度提升本篇文章给大家分享的是有关怎么使用CatBoost进行快速梯度提升,小编觉得挺实用的,因此分享给大家学习,希望大家阅读完这篇文章后可以有所收获,话不多说,跟着小编一起来看看吧。

    攻略 2021年12月21日
  • 如何进行VSFTP+MySQL虚拟用户配置

    技术如何进行VSFTP+MySQL虚拟用户配置本篇文章为大家展示了如何进行VSFTP+MySQL虚拟用户配置,内容简明扼要并且容易理解,绝对能使你眼前一亮,通过这篇文章的详细介绍希望你能有所收获。  VSFTPD是一种在

    攻略 2021年11月20日