變數定義中型別後帶乙個問號,意思是這個資料型別是nullable型別的。用於給變數設初值的時候,給變數(int型別)賦值為null,而不是0!
例子:
int? i = 3 等同於nullablei = new nullable(3);
int?是泛型nullable的另一種寫法。
在定義方法的時候允許傳null值:
publicvoid adduser( string name, string password, int ?role)
//使用
adduser("
小明" , "
123456
" , null ); //
預設null為未審核使用者
adduser("
小王" , "
123456
" ,1); //
管理員
adduser("
何問起" , "
123456
" ,2); //
普通使用者
view plaincopy to clipboardprint?
public
void adduser(string name,string password,int?role)
//使用
adduser("
小明","
123456
",null);//
預設null為未審核使用者
adduser("
小王","
123456
",1);//
管理員
adduser("
何問起","
123456
",2);//
普通使用者
2. 變數定義中型別後帶兩個問號, 用於判斷並賦值,先判斷當前變數是否為null,如果是就可以賦乙個新值,否則跳過!意思是取所賦值??左邊的,如果左邊為null,取所賦值??右邊的。
例子: page ?? 0,表示page為null的時候,取右邊的值0.
推薦:
型別後加問號,雙問號的語法
1.變數定義中型別後帶乙個問號,意思是這個資料型別是nullable型別的。用於給變數設初值的時候,給變數 int型別 賦值為null,而不是0 例子 int?i 3 等同於nullablei new nullable 3 int?是泛型nullable的另一種寫法。在定義方法的時候允許傳null值...
C 單問號( )和雙問號( )用法。
1 單問號 作用 用於給變數設初化的時候,給變數 int型別 賦為null值,而不是0。例子 public int a 預設值為0 public int b 預設值為null 參考 2 雙問號 作用 用於判斷並賦值,先判斷當前變數是否為null,如果是就可以賦乙個新值,否則跳過。例子 public ...
C 型別轉換 is as 單問號 雙問號解密
在c 中型別的轉換分兩種 顯式和隱式,基本的規則如下。基類物件轉化為子類物件,必須顯式轉換,規則 型別名 物件。值型別和引用型別的轉換採用裝箱 boxing 或拆箱 unboxing 子類轉化為基類物件。基本型別互相之間轉化可以用convert類來實現。字串型別轉換為對應的基本型別用parse方法,...