C#中? 、?? 、?. 、??= 的用法和说明
生活随笔
收集整理的這篇文章主要介紹了
C#中? 、?? 、?. 、??= 的用法和说明
小編覺得挺不錯的,現在分享給大家,幫大家做個參考.
一、可空類型修飾符< ? >
引用類型能用空引用來表示一個表示一個不存在的值,但是值類型不能。例如:
string str = null; int i = null;//編譯報錯為了使值類型也能使用可空類型,就可以用 " ? "來表示,表現形式為"T?"。例如:
int i? //表示可空的整型 DateTime time? //表示可空的時間?
二、空合并運算符< ??? >?
用于定義引用類型和可空類型的默認值。如果此運算符的左操作數不為Null,則此操作符將返回左操作數,否則返回右操作數。
var c = a??b //當a不為null時返回a,為null時返回b?
三、< ?. >?
不為null時執行后面的操作。例如:
Person.Name?.Person.Code Person.Name = Person == null ? null : Person.Code //兩段代碼等效?
四、< ??= >?
C# 8.0 引入了 null 合并賦值運算符???=。?僅當左操作數計算為?null?時,才能使用運算符???=?將其右操作數的值分配給左操作數。
List<int> numbers = null; int? i = null;numbers ??= new List<int>(); numbers.Add(i ??= 17); numbers.Add(i ??= 20);Console.WriteLine(string.Join(" ", numbers)); // output: 17 17 Console.WriteLine(i); // output: 17?
創作挑戰賽新人創作獎勵來咯,堅持創作打卡瓜分現金大獎總結
以上是生活随笔為你收集整理的C#中? 、?? 、?. 、??= 的用法和说明的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: php文件怎么设置隐藏显示代码,php文
- 下一篇: C#中采用OLEDB方式来读取EXCEL