亚洲香蕉成人av网站在线观看_欧美精品成人91久久久久久久_久久久久久久久久久亚洲_热久久视久久精品18亚洲精品_国产精自产拍久久久久久_亚洲色图国产精品_91精品国产网站_中文字幕欧美日韩精品_国产精品久久久久久亚洲调教_国产精品久久一区_性夜试看影院91社区_97在线观看视频国产_68精品久久久久久欧美_欧美精品在线观看_国产精品一区二区久久精品_欧美老女人bb

首頁 > 編程 > C# > 正文

C#中is與as的區別分析

2020-01-24 02:20:04
字體:
來源:轉載
供稿:網友

本文實例分析了C#中is與as的區別,分享給大家供大家參考。具體分析如下:

一、C#類型的轉換

在c#中類型的轉換分兩種:顯式和隱式,基本的規則如下:

1、基類對象轉化為子類對象,必須顯式轉換,規則:(類型名) 對象。
2、值類型和引用類型的轉換采用裝箱(boxing)或拆箱(unboxing).
3、子類轉化為基類對象。
4、基本類型互相之間轉化可以用Covent類來實現。
5、字符串類型轉換為對應的基本類型用Parse方法,除了String類型外其他的類型都可以用Parse方法。
6、用GetType可以取得對象的精確類型。
7、子類轉化為基類,采用隱式轉換。

二、C#中的is

檢查一個對象是否兼容于其他指定的類型,并返回一個Bool值,如果一個對象是某個類型或是其父類型的話就返回為true,否則的話就會返回為false。永遠不會拋出異常
如果對象引用為null,那么is操作符總是返回為false,因為沒有對象可以檢查其類型。

例如

復制代碼 代碼如下:
object o = new object();
if (o is Label)
{
    Label lb = (Label)o;
    Response.Write("類型轉換成功");
}
else
{
    Response.Write("類型轉換失敗");  
}

三、C#中as的轉換規則

1、檢查對象類型的兼容性,并返回轉換結果,如果不兼容則返回null;
2、不會拋出異常;
3、如果結果判斷為空,則強制執行類型轉換將拋出NullReferenceException異常;
4、用as來進行類型轉換的時候,所要轉換的對象類型必須是目標類型或者轉換目標類型的派生類型

例如

復制代碼 代碼如下:
object o = new object();   
Label lb = o as Label;   
if (lb == null)
{
    Response.Write("類型轉換失敗");
}
else
{     
    Response.Write("類型轉換成功");
}

使用as操作符有如下幾點限制

第一個就是,不用在類型之間進行類型轉化,即如下編寫就會出現編譯錯誤。

復制代碼 代碼如下:
NewType newValue = new NewType();
NewType1 newValue = newValue as NewType1;

第二個就是,不能應用在值類型數據,即不能如下寫(也會出現編譯錯誤)。

復制代碼 代碼如下:
object objTest = 11;
int nValue = objTest as int;

四、as與is的區別

1、AS在轉換的同事兼判斷兼容性,如果無法進行轉換,則 as 返回 null(沒有產生新的對象)而不是引發異常。有了AS我想以后就不要再用try-catch來做類型轉換的判斷了。因此as轉換成功要判斷是否為null。

2、AS是引用類型類型的轉換或者裝箱轉換,不能用與值類型的轉換。如果是值類型只能結合is來強制轉換
3、IS只是做類型兼容判斷,并不執行真正的類型轉換。返回true或false,不會返回null,對象為null也會返回false。

4、AS模式的效率要比IS模式的高,因為借助IS進行類型轉換的化,需要執行兩次類型兼容檢查。而AS只需要做一次類型兼容,一次null檢查,null檢查要比類型兼容檢查快。

五、在進行類型轉換的時候,可以按照如下的方式進行選擇

1、Object => 已知引用類型
使用as操作符來完成

2、Object => 已知值類型
先使用is操作符來進行判斷,再用類型強轉方式進行轉換

3、已知引用類型之間轉換
首先需要相應類型提供轉換函數,再用類型強轉方式進行轉換

4、已知值類型之間轉換
最好使用系統提供的Convert類所涉及的靜態方法

六、(int)和Int32.Parse(),Convert.ToInt32()三者的區別

1、(int)轉換:用在數值范圍大的類型轉換成數值范圍小的類型時使用,但是如果被轉換的數值大于或者小于數值范圍,則得到一個錯誤的結果,利用這種轉換方式不能將string轉換成int,會報錯。

2、Int32.Parse()轉換:在符合數字格式的string到int類型轉換過程中使用,并可以對錯誤的string數字格式的拋出相應的異常。

3、Convert.ToInt32()轉換:使用這種轉換,所提供的字符串必須是數值的有效表達方式,該數還必須不是溢出的數。否則拋出異常。

希望本文所述對大家的C#程序設計有所幫助。

發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
亚洲香蕉成人av网站在线观看_欧美精品成人91久久久久久久_久久久久久久久久久亚洲_热久久视久久精品18亚洲精品_国产精自产拍久久久久久_亚洲色图国产精品_91精品国产网站_中文字幕欧美日韩精品_国产精品久久久久久亚洲调教_国产精品久久一区_性夜试看影院91社区_97在线观看视频国产_68精品久久久久久欧美_欧美精品在线观看_国产精品一区二区久久精品_欧美老女人bb
日韩有码在线电影| 欧美大尺度激情区在线播放| 久久99青青精品免费观看| 亚洲精品视频免费| 欧美另类交人妖| 在线观看免费高清视频97| 国产精品免费久久久久影院| 国产成人精品视频在线| 国产成人精品久久久| 国产一区二区三区精品久久久| 最近中文字幕mv在线一区二区三区四区| 久久久精品国产网站| 欧美在线视频观看免费网站| 成人中文字幕在线观看| 97久久精品视频| 日韩免费中文字幕| 亚洲大胆人体av| 国产男人精品视频| 成人免费午夜电影| 精品中文字幕在线| 国产亚洲精品成人av久久ww| 欧美综合激情网| 日韩av网址在线观看| 欧美大奶子在线| 九九热r在线视频精品| 国产精品三级美女白浆呻吟| 日韩欧美一区二区三区| 欧美日韩中文在线| www.久久撸.com| 国产成人一区二区三区电影| 中文字幕在线观看日韩| 欧美日韩国产色| 欧美色视频日本版| 日韩av电影院| 日本精品视频在线观看| 亚洲电影免费观看高清完整版| 亚洲色图av在线| 亚洲精品二三区| 91免费综合在线| 色诱女教师一区二区三区| 亚洲人成啪啪网站| 欧美性xxxxxxxxx| 久久福利视频导航| 亚洲成人激情在线观看| 亚洲а∨天堂久久精品喷水| 欧美日韩国产一中文字不卡| 久久不射电影网| 亚洲免费一在线| 久久久久久尹人网香蕉| 亚洲国产精品人久久电影| 亚洲福利在线观看| 大胆欧美人体视频| 亚洲图片欧美午夜| 91青草视频久久| 欧美一区二区三区四区在线| 在线观看国产精品淫| 精品国产一区久久久| 国产一区二区三区久久精品| 国产精品久久久久久久久久ktv| 国产精品国产三级国产aⅴ浪潮| 2023亚洲男人天堂| 日本中文字幕成人| 欧美激情免费视频| 国产精品久久一区主播| 国产精品亚洲视频在线观看| 久久久亚洲网站| 亚洲japanese制服美女| 北条麻妃在线一区二区| 97视频网站入口| 精品国产欧美成人夜夜嗨| 亚洲性视频网址| 激情av一区二区| 亚洲精品天天看| 国产欧美va欧美va香蕉在| 国产一区二区香蕉| 亚洲综合在线中文字幕| 国自产精品手机在线观看视频| 精品国产区一区二区三区在线观看| 国产精品久久久久久影视| 亚洲成人av在线播放| 欧美有码在线观看视频| 国产精品com| 欧美日韩亚洲高清| 亚洲精品视频二区| 日本精品一区二区三区在线| 国产人妖伪娘一区91| 欧美日韩国产精品一区二区不卡中文| 欧美日韩成人在线观看| 亚洲自拍高清视频网站| 国产日韩欧美在线视频观看| 欧美另类极品videosbest最新版本| 久久国产精品电影| 亚洲视频日韩精品| 日韩成人久久久| 欧美日韩色婷婷| 欧美日韩国产一区二区三区| 中文字幕免费精品一区| 欧美性生交xxxxx久久久| 97色在线观看免费视频| 久久久久久欧美| 91久久在线观看| 欧洲精品毛片网站| 国产精品一区二区三| 久久最新资源网| 国产精品igao视频| 91精品久久久久久久久久久久久| 奇门遁甲1982国语版免费观看高清| 91天堂在线视频| 日韩中文在线中文网三级| 日韩精品免费综合视频在线播放| 超碰97人人做人人爱少妇| 国内精品模特av私拍在线观看| 亚洲人成网7777777国产| 国产精品偷伦免费视频观看的| 91产国在线观看动作片喷水| 欧美成年人视频网站| 91视频免费网站| 欧美日韩成人网| 欧美区二区三区| 色先锋久久影院av| 亚洲一区二区黄| 国产精品免费看久久久香蕉| 亚洲综合色激情五月| 国产区精品在线观看| 97精品视频在线观看| 欧美精品中文字幕一区| 中文字幕综合在线| 亚洲风情亚aⅴ在线发布| 日韩免费在线免费观看| 日本一区二三区好的精华液| 在线视频日本亚洲性| 久久综合国产精品台湾中文娱乐网| 欧美高清激情视频| 欧美亚洲在线播放| 国产91精品高潮白浆喷水| 一区二区三区黄色| 国产欧美va欧美va香蕉在| 亚洲第一二三四五区| 久久久日本电影| 97久久久免费福利网址| 亚洲欧美三级伦理| 色综合久久88| 久久中国妇女中文字幕| 日韩电影中文字幕在线| 国产美女扒开尿口久久久| 欧美性jizz18性欧美| 欧美电影第一页| 亚洲国产精品久久| 欧美日韩爱爱视频| 91精品视频观看| 精品久久久久久久久久ntr影视| 亚洲成人网在线观看| 亚洲精品永久免费| 57pao国产成人免费| 国产综合色香蕉精品| 国产精品直播网红| 久久精品视频在线播放| 欧美理论电影在线播放| 国产亚洲精品va在线观看| 国产欧美日韩丝袜精品一区| 全球成人中文在线| 成人福利免费观看| 国产日韩欧美影视| 欧美激情精品久久久久久大尺度|