最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

C# 空值處理運(yùn)算符??、?. 及其它常用符號(hào)

 更新時(shí)間:2025年11月20日 11:49:04   作者:siyun.chen  
本文主要介紹了C# 空值處理運(yùn)算符??、?. 及其它常用符號(hào),文中通過示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧

一、核心運(yùn)算符:直接解決空值問題

1.??空合并運(yùn)算符

  • 作用:左側(cè)為null時(shí),返回右側(cè)值,否則返回左側(cè)值。
  • 代碼對(duì)比
    // 傳統(tǒng)寫法
    string name;
    if (input != null) {
        name = input;
    } else {
        name = "Unknown";
    }
    
    // 使用 ?? 簡(jiǎn)化
    string name = input ?? "Unknown";
    

2.?.空條件運(yùn)算符

  • 作用:安全訪問成員或方法,避免空引用異常。
  • 代碼對(duì)比
    // 傳統(tǒng)寫法(可能崩潰)
    int length = person.Address.City.Length;
    
    // 使用 ?. 安全訪問
    int? length = person?.Address?.City?.Length; // 任何一級(jí)為null則返回null
    

二、輔助運(yùn)算符:擴(kuò)展空值處理場(chǎng)景

3.??=空合并賦值(C# 8+)

  • 作用:變量為null時(shí)賦新值。
    List<int> data = null;
    data ??= new List<int>(); // 等效:if (data == null) data = new List<int>();
    

4.!非空斷言(C# 8+)

  • 作用:明確告訴編譯器“此處不為null”,慎用!
    string? text = GetText();
    Console.WriteLine(text!.Length); // 開發(fā)者保證text非空
    

三、其他常用運(yùn)算符:提升代碼效率

5.?:三元運(yùn)算符

  • 作用:簡(jiǎn)化條件判斷。
    string status = score > 60 ? "通過" : "未通過";
    

6.as安全類型轉(zhuǎn)換

  • 作用:轉(zhuǎn)換失敗返回null,不拋異常。
    object obj = "Hello";
    string str = obj as string; // 成功返回字符串,失敗返回null
    

7.is類型檢查與模式匹配(C# 7+)

  • 作用:類型判斷與值提取一步到位。
    if (obj is int number) {
        Console.WriteLine($"數(shù)字:{number}");
    }
    

四、速查表:運(yùn)算符使用場(chǎng)景

問題場(chǎng)景運(yùn)算符示例代碼等效傳統(tǒng)寫法
變量為空時(shí)使用默認(rèn)值??var result = value ?? 0;value != null ? value : 0
安全訪問可能為空的對(duì)象?.var city = person?.Address?.City;if (person != null) person.Address...
延遲初始化??=list ??= new List();if (list == null) list = new...
明確斷言變量非空!text!.Trim();無直接等效(需自行確保非空)

五、避坑指南

  1. 別濫用 ! 運(yùn)算符

    // 錯(cuò)誤用法:隱藏潛在的空引用風(fēng)險(xiǎn)
    var length = GetNullableString()!.Length; 
    // 正確做法:優(yōu)先使用 ?? 或 ?.
    var safeLength = GetNullableString()?.Length ?? 0;
    
  2. 值類型可空處理

    int? nullableInt = null;
    int value = nullableInt ?? -1; // 必須處理null!
    

到此這篇關(guān)于C# 空值處理運(yùn)算符??、?. 及其它常用符號(hào)的文章就介紹到這了,更多相關(guān)C# 空值處理運(yùn)算符 內(nèi)容請(qǐng)搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!

相關(guān)文章

最新評(píng)論

合水县| 武平县| 宁陕县| 大荔县| 郴州市| 平定县| 武功县| 永善县| 辽源市| 漯河市| 葵青区| 云和县| 海南省| 嵩明县| 长治县| 阜南县| 且末县| 凉城县| 清徐县| 西贡区| 罗城| 洛隆县| 东台市| 宜春市| 巧家县| 汉阴县| 阳信县| 蚌埠市| 托克托县| 绥宁县| 东阿县| 永济市| 伽师县| 曲水县| 通榆县| 莫力| 海南省| 霸州市| 石柱| 庄河市| 监利县|