您好,登錄后才能下訂單哦!
今天就跟大家聊聊有關如何在Java中使用雙等于符號與equals()方法,可能很多人都不太了解,為了讓大家更加了解,小編給大家總結了以下內容,希望大家根據這篇文章可以有所收獲。
Java 程序中測試兩個變量是否相等有兩種方式:一種是利用 == 運算符,另一種是利用equals()方法。
當使用 == 來判斷兩個變量是否相等時,如果兩個變量是基本類型變量,且都是數值類型(不一定要求數據類型嚴格相同),則只要兩個變量的值相等,就返回true。
但是對于兩個引用類型變量,只有它們指向同一個對象時, == 判斷才會返回true。 == 不可用于比較類型上沒有父子關系的兩個對象。
很多書上說equals()方法是判斷兩個對象的值相等。這種說法不準確。實際上equals()方法是Object類提供的一個實例方法,因此所有的引用變量都可以調用該方法來判斷是否與其它引用變量相等。但是使用這個方法判斷兩個對象相等的標準與使用 == 運算符沒有區別,同樣要求兩個變量指向同一個對象才會返回true。因此這個Object類提供的equals()方法沒有太大的實際意義,如果希望采用自定義的相等標準,則可采用重寫equals方法來實現。
String已經重寫了Object的equals()方法,String 的equals()方法判斷兩個字符串相等的標準是:只要兩個字符串所包含的字符序列相同,通過equals()比較將返回true,否則返回 false。
如下列程序所示:
public class EqualTest { public static void main(String[] args) { int num1 = 65; float num2 = 65.0f; //將輸出true System.out.println("65和65.0f是否相等?"+(num1==num2)); char ch = 'A'; //將輸出true System.out.println("65和‘A'是否相等?"+(num1==ch)); String str1 = new String("hello"); String str2 = new String("hello"); //將輸出false System.out.println("str1和str2是否相等?"+(str1==str2)); //將輸出true System.out.println("str1和str2是否相等?"+str1.equals(str2)); } }
程序運行結果如圖:
看完上述內容,你們對如何在Java中使用雙等于符號與equals()方法有進一步的了解嗎?如果還想了解更多知識或者相關內容,請關注億速云行業資訊頻道,感謝大家的支持。
免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。