【ArcGIS Pro二次开发】(86):C#问号运算符(?)的用法

1、三目运算符

cs 复制代码
// 【判断语句】?【为true时获得的值】:【为false时获得的值】
string res = x > 2 ? "正确" : "错误";
// 取值时可以再叠加判断
string res2 = x > 2 ? "正确" : (x > 1 ? "有一点正确" : "错误");

2、可为空

cs 复制代码
// 声明可为空的数据类型
int? a;
int? a = 5;
int? a = null;

3、null条件运算

cs 复制代码
// 如果row["SZ1"]为空,赋值结果就直接返回null,而不是报错
var sz1 = row["SZ1"]?.string(); 

4、null合并运算

cs 复制代码
// x不为空时,返回x,为空时返回-1
int? x = null;
return x ?? -1;
相关推荐
烛阴7 小时前
C# 正则表达式(5):前瞻/后顾(Lookaround)——零宽断言做“条件校验”和“精确提取”
前端·正则表达式·c#
m5655bj12 小时前
使用 C# 实现 Excel 工作表拆分
windows·c#·excel·visual studio
fengfuyao98514 小时前
基于C#实现的支持五笔和拼音输入的输入法
开发语言·c#
xiaowu08015 小时前
C# 多返回值写法
java·前端·c#
前端慢慢其修远15 小时前
利用signalR实现简单通信(Vue2+C#)
c#·vue
微小冷16 小时前
C#异步编程详解
开发语言·c#·async·await·异步编程
qq_3161652916 小时前
C#委托和事件的区别
开发语言·c#
刘975316 小时前
【第24】天24c#今日小结
开发语言·c#
wangnaisheng17 小时前
【C#】性能优化
c#
CreasyChan18 小时前
Unity DOTS技术栈详解
unity·c#·游戏引擎