今天就跟大家聊聊有關(guān)如何在Java中使用雙等于符號(hào)與equals()方法,可能很多人都不太了解,為了讓大家更加了解,小編給大家總結(jié)了以下內(nèi)容,希望大家根據(jù)這篇文章可以有所收獲。
Java 程序中測(cè)試兩個(gè)變量是否相等有兩種方式:一種是利用 == 運(yùn)算符,另一種是利用equals()方法。
當(dāng)使用 == 來(lái)判斷兩個(gè)變量是否相等時(shí),如果兩個(gè)變量是基本類型變量,且都是數(shù)值類型(不一定要求數(shù)據(jù)類型嚴(yán)格相同),則只要兩個(gè)變量的值相等,就返回true。
但是對(duì)于兩個(gè)引用類型變量,只有它們指向同一個(gè)對(duì)象時(shí), == 判斷才會(huì)返回true。 == 不可用于比較類型上沒(méi)有父子關(guān)系的兩個(gè)對(duì)象。
很多書上說(shuō)equals()方法是判斷兩個(gè)對(duì)象的值相等。這種說(shuō)法不準(zhǔn)確。實(shí)際上equals()方法是Object類提供的一個(gè)實(shí)例方法,因此所有的引用變量都可以調(diào)用該方法來(lái)判斷是否與其它引用變量相等。但是使用這個(gè)方法判斷兩個(gè)對(duì)象相等的標(biāo)準(zhǔn)與使用 == 運(yùn)算符沒(méi)有區(qū)別,同樣要求兩個(gè)變量指向同一個(gè)對(duì)象才會(huì)返回true。因此這個(gè)Object類提供的equals()方法沒(méi)有太大的實(shí)際意義,如果希望采用自定義的相等標(biāo)準(zhǔn),則可采用重寫equals方法來(lái)實(shí)現(xiàn)。
String已經(jīng)重寫了Object的equals()方法,String 的equals()方法判斷兩個(gè)字符串相等的標(biāo)準(zhǔn)是:只要兩個(gè)字符串所包含的字符序列相同,通過(guò)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)); } }
網(wǎng)頁(yè)題目:如何在Java中使用雙等于符號(hào)與equals()方法-創(chuàng)新互聯(lián)
網(wǎng)站地址:http://chinadenli.net/article34/ddispe.html
成都網(wǎng)站建設(shè)公司_創(chuàng)新互聯(lián),為您提供品牌網(wǎng)站設(shè)計(jì)、微信小程序、虛擬主機(jī)、網(wǎng)站營(yíng)銷、品牌網(wǎng)站建設(shè)、網(wǎng)站內(nèi)鏈
聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以用戶投稿、用戶轉(zhuǎn)載內(nèi)容為主,如果涉及侵權(quán)請(qǐng)盡快告知,我們將會(huì)在第一時(shí)間刪除。文章觀點(diǎn)不代表本網(wǎng)站立場(chǎng),如需處理請(qǐng)聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內(nèi)容未經(jīng)允許不得轉(zhuǎn)載,或轉(zhuǎn)載時(shí)需注明來(lái)源: 創(chuàng)新互聯(lián)
猜你還喜歡下面的內(nèi)容