C#中?、 ??、 ? :!

本文详细介绍了C#编程中四种问号操作符的用法:可空类型(?)、空合并操作符(??)、条件运算符(?:)以及空成员访问操作符(!)。通过实例解析了它们在代码中的应用,帮助开发者理解如何避免空引用异常并提升代码的健壮性。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

一、?

1、在值类型中添加?,代表没给值类型分配内存空间,如int?a = null
2、在引用对象中添加?,如string a = null,a.append()方法则报空引用异常错误,如果使用a?.append()将不会执行append方法

二、??

使用在引入类型中,如果前者为空,则将后者的对象赋给它
如 var s = null ?? null ?? “2”; 则s为字符串2

三、? :

三目运算符,则使用在必须有返回值中且两者返回结果的类型必须一致,当条件满足时则执行?后面的,或者执行:后面的结果

var s = true ? 1 : 2,结果为1

四、!

当如果你确定引用类型不为空时则使用!.,如 a.Display()比如出现引用波浪线并且出现空引用异常时,可以使用a!.Display()来解决波浪线的问题

评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值