C 中As 及Is 的用法

2021-06-03 23:32:27 字數 742 閱讀 4651

=session[

"user"]

asif

(user

==null

return

"error");

有些不明白,上網查了些資料,對as和is有了些了解,把資料放在這裡供學習和參考:

在c#中,所有的東西都是物件。因此任何常數也是乙個整型物件。這裡用到了as ,as 是c#語言裡面的乙個關鍵字。as 運算子類似於型別轉換,所不同的是,當轉換失敗時,as 運算子將產生空,而不是引發異常。在形式上,這種形式的表示式:

expression as type

as 運算子只執行引用轉換和裝箱轉換。

as 運算子無法執行其他轉換,如使用者定義的轉換,這類轉換應使用case表示式來代替其執行

關於is的其實也差不多,只是is不會幫你進行任何的轉換。所以需要自已進行顯示轉換

is操作符進行轉換,它自動檢查時局是否和型別相容,並返回結果。而且它不會丟擲異常。如果物件引用為null,則is總返回false。

if(cls1 is=

else

"error 2!");

as操作符進行轉換:

=cls1

asif

(cls2

!=null"ok

"else

"error!");

對比兩種方式,is需要做兩次物件的型別檢查,而as需要做一次物件型別檢查,再加一次null的檢查,而null檢查開銷比物件型別檢查少。相對as的方法效率高些。

C 中Dictionary的用法及用途

c 中dictionary的用法及用途 他本身有集合的功能有時候可以把它看成陣列 他的結構是這樣的 dictionary key value 他的特點是存入物件是需要與 key 值一一對應的存入該泛型 通過某乙個一定的 key 去找到對應的值 舉個例子 例項化物件 dictionarydic new...

C 中Dictionary的用法及用途

他本身有集合的功能有時候可以把它看成陣列 他的結構是這樣的 dictionary key value 他的特點是存入物件是需要與 key 值一一對應的存入該泛型 通過某乙個一定的 key 去找到對應的值 舉個例子 例項化物件 dictionarydic new dictionary 物件打點新增 d...

C 中Dictionary的用法及用途

dictionary是乙個泛型 他本身有集合的功能有時候可以把它看成陣列 他的結構是這樣的 dictionary key value 他的特點是存入物件是需要與 key 值一一對應的存入該泛型 通過某乙個一定的 key 去找到對應的值 舉個例子 例項化物件 dictionarydic new dic...