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

首頁 > 編程 > C# > 正文

C#中的 == 和equals()區別淺析

2020-01-24 01:24:17
字體:
來源:轉載
供稿:網友

首先看看,如以下代碼:

int age = 25; short newAge = 25; Console.WriteLine(age == newAge); //true Console.WriteLine(newAge.Equals(age)); //false Console.ReadLine();

int和short為原始類型,但與“==”比較返回true,equals()比較返回false。為什么呢?

簡而言之:“equals()”相比“= =”復雜。

具體來說:

  原始類型覆蓋(override)基類的object.Equals(object),并且當括弧中的object與其類型和值相同時返回true (注意Nullable類型也適合上述判斷;非空Nullable類型總是裝箱到一個基礎類型實例)。

  由于newAge是short,因此在object是short且值與newAge值相等時,newAge.Equals(object)返回true。你傳遞的是一個int對象,所以它返回false。

  相比之下,“= =”運算符被定義為帶兩個整形(int)或兩個短整型(short)或兩個長整形(long)的運算。當“= =”兩個參數一個是整形和一個短整型時,編譯器會隱式轉換short為int,并比較轉換后int值大小。

使其工作其他方法:

  原始類型也有自己的equals()方法,equals接受相同的類型的參數。

  如果你寫age.Equals(newAge),編譯器將選擇int.Equals(int)作為最好的重載(overload)方法且隱式轉換short為int。然后,它會返回true,因為這種方法直接比較兩個int值大小。

  short也有一個short.Equals(short)方法,但是int類型不能隱式轉換為short,所以就不會調用它。

  你可以使用cast轉換強制調用這個方法:

Console.Writeline(newAge.Equals((short)age)); //true
  這將直接調用short.Equals(short),沒有裝箱操作。如果age大于32767,它會拋出一個溢出異常。

  你也可調用short.Equals(object)這個重載,但需要明確地傳遞一個經過裝箱的具有相同類型的對象:
Console.WriteLine(newAge.Equals((object)(short)age)); // true
  像前面可選方法(short.Equals(short))一樣,如果大小超過short范圍,同樣拋出一個溢出異常。不同于以往的解決方案,它將short裝箱成一個object――浪費time和memory。

這里是實際中使用的Equals():

public override bool Equals(Object obj) {     if (!(obj is Int16)) {      return false;     }     return m_value == ((Int16)obj).m_value;   }   public bool Equals(Int16 obj)   {     return m_value == obj;   }

通過這篇文章大家是不是對C#中的 == 和equals()的區別有所了解了,希望這篇文章對大家的學習有所幫助。

發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
亚洲香蕉成人av网站在线观看_欧美精品成人91久久久久久久_久久久久久久久久久亚洲_热久久视久久精品18亚洲精品_国产精自产拍久久久久久_亚洲色图国产精品_91精品国产网站_中文字幕欧美日韩精品_国产精品久久久久久亚洲调教_国产精品久久一区_性夜试看影院91社区_97在线观看视频国产_68精品久久久久久欧美_欧美精品在线观看_国产精品一区二区久久精品_欧美老女人bb
色哟哟入口国产精品| 亚洲人成电影网站色xx| 最近2019中文字幕第三页视频| 欧美电影免费观看网站| 国产精品露脸av在线| 欧美裸体男粗大视频在线观看| 日韩av在线影院| 亚洲欧洲一区二区三区在线观看| 日本一区二区三区四区视频| 成人av电影天堂| 97久久精品在线| 91chinesevideo永久地址| 欧美成人黄色小视频| 成人一区二区电影| 亚洲三级av在线| 久热精品在线视频| 日韩av不卡在线| 日本精品性网站在线观看| 欧美午夜激情在线| 亚洲最大av网站| 美女999久久久精品视频| 一本色道久久88综合日韩精品| 一区二区三区天堂av| 一本一本久久a久久精品综合小说| 亚洲天天在线日亚洲洲精| 日韩精品日韩在线观看| 免费91麻豆精品国产自产在线观看| 亚洲精品视频免费在线观看| 在线观看日韩欧美| 国产精品高潮呻吟久久av无限| 国产mv免费观看入口亚洲| 亚洲精品少妇网址| 欧美大尺度电影在线观看| 国产精品亚洲精品| 久久久久久久久亚洲| 亚洲国产精品成人一区二区| 色悠久久久久综合先锋影音下载| 欧美激情一区二区三区高清视频| 95av在线视频| 亚洲午夜av电影| 色多多国产成人永久免费网站| 久久综合网hezyo| 国内精久久久久久久久久人| 亚洲综合日韩在线| 成人网页在线免费观看| 日韩成人中文字幕在线观看| 91情侣偷在线精品国产| 国产精品美女在线观看| 91网站在线看| 亚洲综合精品一区二区| 亚洲人成在线一二| 26uuu亚洲伊人春色| 国产激情视频一区| 成人疯狂猛交xxx| 色噜噜国产精品视频一区二区| 久久偷看各类女兵18女厕嘘嘘| 亚洲精品成人久久电影| 亚洲国产成人在线播放| 亚洲国模精品一区| 日韩中文娱乐网| 国产精国产精品| 久久久久久亚洲精品中文字幕| 92看片淫黄大片欧美看国产片| 国产综合福利在线| 日韩中文字在线| 91国自产精品中文字幕亚洲| 日产精品久久久一区二区福利| 久久久亚洲国产天美传媒修理工| 亚洲一区二区少妇| 免费99精品国产自在在线| 亚洲第一福利网站| 欧美激情在线视频二区| 国产精品毛片a∨一区二区三区|国| 国产精品白丝jk喷水视频一区| 成人情趣片在线观看免费| 日韩亚洲综合在线| 亚洲最大成人在线| 91久久久久久久久| 久久人体大胆视频| 精品国产欧美一区二区五十路| 成人福利视频网| 国产日韩精品在线观看| 亚洲国产一区二区三区在线观看| 日韩二区三区在线| 91成人性视频| 亚洲电影免费观看高清完整版在线| 欧美疯狂性受xxxxx另类| 久久久精品中文字幕| 国产精品久久久久福利| 国产精品欧美激情在线播放| 日韩av在线免费观看一区| 成人午夜一级二级三级| 午夜精品一区二区三区在线播放| 午夜精品www| 国产精品丝袜久久久久久高清| 欧美黄网免费在线观看| 欧美性生交大片免费| 欧美日韩成人网| 中文字幕视频在线免费欧美日韩综合在线看| 亚洲一区亚洲二区| 欧美片一区二区三区| 青草热久免费精品视频| 欧美激情高清视频| 欧美超级免费视 在线| 久久久噜噜噜久噜久久| 国产女同一区二区| 亚洲综合视频1区| 国产成人精品一区二区在线| 亚洲精品电影在线| 亚洲一区免费网站| 性金发美女69hd大尺寸| 精品国产一区二区三区在线观看| 欧美日韩激情视频8区| 一区二区在线免费视频| 一个人www欧美| 欧美在线视频免费| 在线观看91久久久久久| 亚洲精品www久久久久久广东| 日韩成人中文字幕在线观看| 久久久久久久激情视频| 欧美国产乱视频| 日韩精品中文字幕视频在线| 亚洲免费视频观看| 日韩av在线网址| 欧美日韩免费网站| 精品视频在线播放免| 国产成人免费91av在线| 国产精品白嫩美女在线观看| 日韩精品小视频| 亚洲欧洲一区二区三区在线观看| 国产91九色视频| 久久精品国产v日韩v亚洲| 欧美影院久久久| 国产一区二区色| 91免费高清视频| 欧美精品少妇videofree| 亚洲成年人影院在线| 最近更新的2019中文字幕| 日韩高清免费观看| 国产精品成人品| 亚洲理论在线a中文字幕| 欧美在线观看视频| 久久av中文字幕| 欧美高清激情视频| 国产精品99久久久久久www| 欧美日韩免费观看中文| 日韩精品免费综合视频在线播放| 亚洲大胆人体在线| 亚洲美女av在线| 最新中文字幕亚洲| 国产亚洲综合久久| 久久综合免费视频| 欧美日韩精品二区| 久久人91精品久久久久久不卡| 国产91精品最新在线播放| 精品亚洲永久免费精品| 亚洲黄色免费三级| 久久久久久尹人网香蕉| 欧美激情视频三区| 午夜精品国产精品大乳美女| 久久人人爽人人| 国产精品黄色影片导航在线观看| 亚洲色图25p| 日韩小视频在线|