91超碰碰碰碰久久久久久综合_超碰av人澡人澡人澡人澡人掠_国产黄大片在线观看画质优化_txt小说免费全本

溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務條款》

.net中as和is之間有什么不同

發布時間:2021-02-19 13:52:03 來源:億速云 閱讀:195 作者:小新 欄目:開發技術

這篇文章將為大家詳細講解有關.net中as和is之間有什么不同,小編覺得挺實用的,因此分享給大家做個參考,希望大家閱讀完這篇文章后可以有所收獲。

1、as

用于在兼容的引用類型之間執行轉換,as 運算符類似于強制轉換操作;但是,如果轉換不可行,as 會返回 null 而不是引發異常。更嚴格地說,這種形式的表達式:expression as type,等效于expression is type ? (type)expression : (type)null,只是 expression 只被計算一次。注意,as 運算符只執行引用轉換和裝箱轉換。as 運算符無法執行其他轉換,如用戶定義的轉換,這類轉換應使用 cast 表達式來執行 as操作符不會做過的轉換操作,當需要轉化對象的類型屬于轉換目標類型或者轉換目標類型的派生類型時,那么此轉換操作才能成功。

效率:

當用as操作符進行類型轉換的時候,首先判斷當前對象的類型, 當類型滿足要求后才進行轉換,而傳統的類型轉換方式,是用當前對象直接去轉換, 而且為了保護轉換成功,要加上try-catch. 而且并不產生新的對象【當不成功的時候,會返回null】。 相對來說,as效率高點,用as進行類型轉換是安全的。 實例: e.Item.DataItem as DataRowView 同等 (DataRowView)e.Item.DataItem

2、is

檢查對象是否與給定類型兼容,例如:if(obj is string){}。如果所提供的表達式非空,并且所提供的對象可以強制轉換為所提供的類型而不會導致引發異常,則 is 表達式的計算結果將是 true。如果已知表達式將始終是 true 或始終是 false,則 is 關鍵字將導致編譯時警告,但是,通常在運行時才計算類型兼容性。不能重載 is 運算符。請注意,is 運算符只考慮引用轉換、裝箱轉換和取消裝箱轉換。

關于“.net中as和is之間有什么不同”這篇文章就分享到這里了,希望以上內容可以對大家有一定的幫助,使各位可以學到更多知識,如果覺得文章不錯,請把它分享出去讓更多的人看到。

向AI問一下細節

免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。

as is
AI

江都市| 虞城县| 昌宁县| 凭祥市| 孝义市| 吉安县| 射阳县| 多伦县| 辽宁省| 高平市| 云南省| 天柱县| 东阳市| 龙泉市| 固阳县| 自治县| 兰州市| 方城县| 吴桥县| 万载县| 波密县| 武安市| 旌德县| 横山县| 张掖市| 宁蒗| 长白| 多伦县| 井陉县| 涟水县| 平遥县| 通道| 威信县| 关岭| 色达县| 枣阳市| 青岛市| 梅河口市| 尚义县| 宁蒗| 肇州县|