C 中的問號運算子

2022-01-24 14:46:46 字數 706 閱讀 8061

c#中的問號運算子分為三種功能:

第一種:單問號作為條件判斷的三元運算子。

這種方式可以處理一些簡單的if結構的條件語句,

比如簡單的根據條件結果賦值的功能:

inta =4

;intb =

-4;intc =

b >0?

b : a;

上面的**實現了如果變數b的值大於0,則將b的值賦給c,否則將a的值賦給c。

第二種:單問號做為基本資料型別宣告變數的識別符號。

這種方式結構如下:

int?

<

argument

>

=<

value

>

;這樣可以實現基本資料型別的值也可以賦為null。

比如:inti =

null

;這樣的**將在編譯時報錯,而像下面的**則可以正常執行:

int?i =

null

;第三種:雙問號做為條件判斷的運算子。

比如我們要保證乙個字串物件的值不能為null,則可以使用如下方式:

string

str1

=null

;string

str2

=str1

??""

;上面**將自動判斷str1物件的值,如果不為null,將str1的值賦於str2,否則將空字串賦於str2

C ?問號運算子知多少

總結一下c 中問號有三種 第一 三目操作運算子 問號前面的是條件,後面的是結果,條件滿足返回冒號前面的值否則後面的值 事例 csharp view plain copy white space pre public intwhobig inta,intb public intwhosmall int...

c 小技巧 單問號和雙問號 位運算子

作用 用於給變數設初化的時候,給變數 int型別 賦為null值,而不是0。例子 public int a 預設值為0 public int b 預設值為null 參考 作用 用於判斷並賦值,先判斷當前變數是否為null,如果是就可以賦乙個新值,否則跳過。例子 public int?b 預設值為nu...

C 中 運算子 和 運算子

運算子定義在將可空型別分配給非可空型別時返回的預設值。int?c null 若 c 為 null,則 d 為 1,否則把 c 值賦予 d int d c 1 型別名稱後加問號,如 int?i null double?d null bool?b null 可指定可為 null 的 int double...