欧美bbbwbbbw肥妇,免费乱码人妻系列日韩,一级黄片

詳解c# 可空類型(Nullable)

 更新時(shí)間:2020年07月13日 16:45:44   作者:菜鳥教程  
這篇文章主要介紹了c# 可空類型(Nullable)的相關(guān)資料,文中示例代碼非常詳細(xì),幫助大家更好的理解和學(xué)習(xí),感興趣的朋友可以了解下

C# 單問(wèn)號(hào) ? 與 雙問(wèn)號(hào) ??

? : 單問(wèn)號(hào)用于對(duì) int,double,bool 等無(wú)法直接賦值為 null 的數(shù)據(jù)類型進(jìn)行 null 的賦值,意思是這個(gè)數(shù)據(jù)類型是 NullAble 類型的。

int? i = 3 
等同于
Nullable<int> i = new Nullable<int>(3);

int i; //默認(rèn)值0
int? ii; //默認(rèn)值null

?? : 雙問(wèn)號(hào) 可用于判斷一個(gè)變量在為 null 時(shí)返回一個(gè)指定的值。

接下來(lái)我們?cè)敿?xì)說(shuō)明。

C# 可空類型(Nullable)

C# 提供了一個(gè)特殊的數(shù)據(jù)類型,nullable 類型(可空類型),可空類型可以表示其基礎(chǔ)值類型正常范圍內(nèi)的值,再加上一個(gè) null 值。

例如,Nullable< Int32 >,讀作"可空的 Int32",可以被賦值為 -2,147,483,648 到 2,147,483,647 之間的任意值,也可以被賦值為 null 值。類似的,Nullable< bool > 變量可以被賦值為 true 或 false 或 null。

在處理數(shù)據(jù)庫(kù)和其他包含可能未賦值的元素的數(shù)據(jù)類型時(shí),將 null 賦值給數(shù)值類型或布爾型的功能特別有用。例如,數(shù)據(jù)庫(kù)中的布爾型字段可以存儲(chǔ)值 true 或 false,或者,該字段也可以未定義。

聲明一個(gè) nullable 類型(可空類型)的語(yǔ)法如下:

< data_type> ? <variable_name> = null;

下面的實(shí)例演示了可空數(shù)據(jù)類型的用法:

using System;
namespace CalculatorApplication
{
  class NullablesAtShow
  {
   static void Main(string[] args)
   {
     int? num1 = null;
     int? num2 = 45;
     double? num3 = new double?();
     double? num4 = 3.14157;
     
     bool? boolval = new bool?();

     // 顯示值
     
     Console.WriteLine("顯示可空類型的值: {0}, {1}, {2}, {3}",
              num1, num2, num3, num4);
     Console.WriteLine("一個(gè)可空的布爾值: {0}", boolval);
     Console.ReadLine();

   }
  }
}

當(dāng)上面的代碼被編譯和執(zhí)行時(shí),它會(huì)產(chǎn)生下列結(jié)果:

顯示可空類型的值: , 45,  , 3.14157
一個(gè)可空的布爾值:

Null 合并運(yùn)算符( ?? )

Null 合并運(yùn)算符用于定義可空類型和引用類型的默認(rèn)值。Null 合并運(yùn)算符為類型轉(zhuǎn)換定義了一個(gè)預(yù)設(shè)值,以防可空類型的值為 Null。Null 合并運(yùn)算符把操作數(shù)類型隱式轉(zhuǎn)換為另一個(gè)可空(或不可空)的值類型的操作數(shù)的類型。

如果第一個(gè)操作數(shù)的值為 null,則運(yùn)算符返回第二個(gè)操作數(shù)的值,否則返回第一個(gè)操作數(shù)的值。下面的實(shí)例演示了這點(diǎn):

using System;
namespace CalculatorApplication
{
  class NullablesAtShow
  {
     
   static void Main(string[] args)
   {
     
     double? num1 = null;
     double? num2 = 3.14157;
     double num3;
     num3 = num1 ?? 5.34;   // num1 如果為空值則返回 5.34
     Console.WriteLine("num3 的值: {0}", num3);
     num3 = num2 ?? 5.34;
     Console.WriteLine("num3 的值: {0}", num3);
     Console.ReadLine();

   }
  }
}

當(dāng)上面的代碼被編譯和執(zhí)行時(shí),它會(huì)產(chǎn)生下列結(jié)果:

num3 的值: 5.34
num3 的值: 3.14157

以上就是詳解c# 可空類型(Nullable)的詳細(xì)內(nèi)容,更多關(guān)于c# 可空類型(Nullable)的資料請(qǐng)關(guān)注腳本之家其它相關(guān)文章!

相關(guān)文章

  • C#實(shí)現(xiàn)帶消息數(shù)的App圖標(biāo)

    C#實(shí)現(xiàn)帶消息數(shù)的App圖標(biāo)

    這篇文章主要介紹了如何使用C#實(shí)現(xiàn)帶消息數(shù)的App圖標(biāo)的方法,并附上全部源碼,分享給大家,有需要的小伙伴可以參考下。
    2015-12-12
  • C#基于COM方式讀取Excel表格的方法

    C#基于COM方式讀取Excel表格的方法

    這篇文章主要介紹了C#基于COM方式讀取Excel表格的方法,涉及C# COM組件的調(diào)用與Excel表格的使用技巧,需要的朋友可以參考下
    2016-07-07
  • Unity?使用tiledmap解析地圖的詳細(xì)過(guò)程

    Unity?使用tiledmap解析地圖的詳細(xì)過(guò)程

    這篇文章主要介紹了Unity?使用tiledmap解析地圖,本文通過(guò)圖文實(shí)例相結(jié)合給大家介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或工作具有一定的參考借鑒價(jià)值,需要的朋友可以參考下
    2022-04-04
  • Unity3D實(shí)現(xiàn)射線使物體移動(dòng)

    Unity3D實(shí)現(xiàn)射線使物體移動(dòng)

    這篇文章主要為大家詳細(xì)介紹了Unity3D實(shí)現(xiàn)射線使物體移動(dòng),文中示例代碼介紹的非常詳細(xì),具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下
    2019-12-12
  • c# 隨機(jī)函數(shù)的使用詳解

    c# 隨機(jī)函數(shù)的使用詳解

    本篇文章是對(duì)c#隨機(jī)函數(shù)的使用進(jìn)行了詳細(xì)的分析介紹,需要的朋友參考下
    2013-06-06
  • C#基于OLEDB獲取Excel文件表結(jié)構(gòu)信息的方法

    C#基于OLEDB獲取Excel文件表結(jié)構(gòu)信息的方法

    這篇文章主要介紹了C#基于OLEDB獲取Excel文件表結(jié)構(gòu)信息的方法,結(jié)合實(shí)例形式分析了OLEDB的調(diào)用及Excel的相關(guān)操作技巧,需要的朋友可以參考下
    2017-05-05
  • C#中Hashtable和Dictionary的區(qū)別與用法示例

    C#中Hashtable和Dictionary的區(qū)別與用法示例

    由于 Hashtable 和 Dictionary 同時(shí)存在, 在使用場(chǎng)景上必然存在選擇性, 并不任何時(shí)刻都能相互替代。所以這篇文章主要給大家介紹了關(guān)于C#中Hashtable和Dictionary區(qū)別的相關(guān)資料,需要的朋友可以參考下
    2021-05-05
  • C#裝飾者模式實(shí)例分析

    C#裝飾者模式實(shí)例分析

    這篇文章主要介紹了C#裝飾者模式,是C#中比較常見(jiàn)的設(shè)計(jì)模式,非常具有實(shí)用價(jià)值,需要的朋友可以參考下
    2014-10-10
  • Unity通過(guò)UGUI的Slider調(diào)整物體顏色

    Unity通過(guò)UGUI的Slider調(diào)整物體顏色

    這篇文章主要為大家詳細(xì)介紹了Unity通過(guò)UGUI的Slider調(diào)整物體顏色,具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下
    2019-02-02
  • 解決C#運(yùn)行程序修改數(shù)據(jù)后數(shù)據(jù)表不做更新的問(wèn)題

    解決C#運(yùn)行程序修改數(shù)據(jù)后數(shù)據(jù)表不做更新的問(wèn)題

    近日,在使用C#連接數(shù)據(jù)庫(kù)的時(shí)候,對(duì)數(shù)據(jù)庫(kù)中的表做更新后,在當(dāng)前啟動(dòng)項(xiàng)目中去顯示表數(shù)據(jù)時(shí)雖然會(huì)發(fā)生一個(gè)更新,但是在結(jié)束程序運(yùn)行后再去觀察數(shù)據(jù)表中的記錄時(shí)發(fā)現(xiàn)并沒(méi)有發(fā)生一個(gè)變化,所以本文給大家解決一下這個(gè)問(wèn)題,需要的朋友可以參考下
    2023-08-08

最新評(píng)論