C 中 和Equals的區別

2021-08-21 19:09:26 字數 538 閱讀 8461

==和equals比較的內容都是一致的,都是比較內容

==

equals

比較首位址是否相等

比較值是否相等

利用反編譯工具,檢視string原始碼,可以看到如下**

從**中可以看出,string對==也進行了重寫,所以,在string型別==和equals的功能是一致的,也是進行值的比較,所以如下**的:

string s1 = "a";

string s2 = "a";

string s3 = new string(new char[1]);

console.writeline(s1 == s2);

console.writeline(s1 == s3);

這裡的輸出結果都一定是true

c 中「 」和Equals的區別

一 值型別的比較 對於值型別來說 兩者比較的都是 內容 是否相同,即值 是否一樣,很顯然此時兩者是劃等號的。int i 9 int j 9 console.writeline i j i j true console.writeline i.equals j i.equals j true 二 引用...

C 中 和equals的區別

不想說太多,直接上 這兩個就沒什麼聯絡,有自己獨立的規則。聯絡在一起其實不利於記憶。下面是測試 console.writeline equals和 的區別 console.writeline 1 對於值型別的資料 console.writeline console.writeline 1.1 型別和...

C 中「 」和equals 的區別

如以下 12 3456 789intage 25 short newage 25 console.writeline age newage true console.writeline newage.equals age false console.readline age newage返回true...