国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁 > 編程 > C# > 正文

C#中??運算符的使用方法

2023-05-03 13:32:45
字體:
來源:轉載
供稿:網友

??是C#2.0中新增的一個運算符,可以認為是三元操作符?:的簡版,其主要作用是如果 ?? 運算符的左操作數非空,該運算符將返回左操作數,否則返回右操作數。如果能較好地使用此操作符,將會得到意想不到的效果。

public class Program
{
  
class MyClass {}
   
  
static MyClass instance;
  
static void Main()
   {
      
//如果instance == null,則做初始化 
     
      
//常規寫法:
       if(instance == null)
       {
          instance
= new MyClass();
       }
      
//使用??的寫法:
       instance = instance ?? new MyClass();
   }
}

也可以用于函數的返回值中:

public class Program
    {
       
public string Str1 { get; set; }
       
public string Str2 { get; set; }
       
public string Str3 { get; set; }
       
//如果Str1不為NULL返回Str1,否則Str2,以此類推
        public override string ToString()
        {
           
//if-else常規寫法
              if (Str1 != null)
            {
               
return Str1;
            }
           
else if (Str2 != null)
            {
               
return Str2;
            }
           
else if (Str3 != null)
            {
               
return Str3;
            }
           
else
            {
               
return base.ToString();
            }
           
//?:運算符寫法
              return Str1 != null ? Str1 : (Str2 != null ? Str2 : (Str3 != null ? Str3 : base.ToString()));
           
//??運算符寫法
             return Str1 ?? (Str2 ?? (Str3 ?? base.ToString()));
        }
    }

發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
主站蜘蛛池模板: 南郑县| 尉氏县| 灵丘县| 石城县| 昌宁县| 张家界市| 榆中县| 金川县| 仙居县| 高密市| 天峨县| 涟水县| 鹰潭市| 上虞市| 南城县| 临湘市| 丹江口市| 德兴市| 望都县| 当阳市| 广宁县| 平谷区| 丹凤县| 高清| 巩义市| 新民市| 通江县| 南通市| 田东县| 通道| 兴国县| 兴化市| 屯昌县| 曲靖市| 铁岭市| 阿巴嘎旗| 六枝特区| 津市市| 宣威市| 抚松县| 乃东县|