導航:首頁 > 編程語言 > java比較方法

java比較方法

發布時間:2022-08-22 04:45:36

java中的字元串比較方法

java中的字元串比較方法:
1)string1.equals(string2)
2) str1==str2 。
java中字元串的比較是==比較引用,equals 比較值的做法。但是不同的聲明方法字元串的比較結果也是不同的。
例如: String str1=new String("a");
String str2=new String("a");
str1==str2 輸出false
str1.equals(str2) 輸出true
而如果這樣聲明
String str1="a";
String str2="a";
str1==str2 輸出true
str1.equals(str2) 輸出true
這是因為 equals 方法本來也是比較引用的字元串類在實現的時候重寫了該方法。
第一種聲明方法等於是聲明了兩個對象,用』==『比較是時候比較的是引用輸出的是false 由於他們的值相同用equals的時候就比較的是值了,輸出true。
第二種情況不是因為比較有與第一種有差異,而是因為聲明有差異,第二種聲明方法在聲明的時候有堆或堆棧 共用的現象,也就是說 在聲明的時候如果如果聲明為類屬性他會檢查在堆棧中有沒有與現在聲明的是相同結構的字元串。如果有就直接將地址指向已有內存地址。聲明在方法內部的局部變數原理一樣只不過他是堆棧共享。

Ⅱ java中兩個字元串如何比較大小

有三種方法實現

第一種直接用字元串類的compareTo方法:

Stringt1="20131011";
Stringt2="20131030";
intresult=t1.compareTo(t2);

第二種是把這個日期字元串轉換成long:

SimpleDateFormatsdf=newSimpleDateFormat("yyyyMMdd");
Dated1=sdf.parse(t1);
Dated2=sdf.parse(t2);
longresult=d1.getTime()-d2.getTime();

第三種是把日期字元串轉換成整形int:

intint1=Integer.parseInt(t1);
intint2=Integer.parseInt(t2);
intresult=int1-int2;

註:result大於0,則t1>t2;

result等於0,則t1=t2;

result小於0,則t1<t2;

Ⅲ java compareto 是怎麼比較的

java中的compareto方法,返回參與比較的前後兩個字元串的asc碼的差值。
如果兩個字元串首字母不同,則該方法返回首字母的asc碼的差值
參與比較的兩個字元串如果首字元相同,則比較下一個字元,直到有不同的為止,返回該不同的字元的asc碼差值,如果兩個字元串不一樣長,可以參與比較的字元又完全一樣,則返回兩個字元串的長度差值

Ⅳ java中比較兩個字元串是否相等的方法

你好,比較兩個字元串是否相等可以用equals方法。
比如要比較字元串變數a和字元串變數b是否相等就是a.equals(b)。這個表達式返回這個布爾值,為true表示相等,為false表示不相等。

Ⅳ java中如何比較兩個數組確定是否相等

兩個方法,第一個比較常規,第二個特別適合字元數組的判斷。

方法一:

char[] a = {'a', 'b'};

char[] b = {'a', 'f'}; //對a, b 數組賦值操作

if (a.length != b.length) {

System.out.print("兩個數組不相等");

return;

} else {

for (int i = 0; i < a.length; i++) {

if (a[i] != b[i]) {

System.out.print("兩個數組不相等");

return;

}

}

System.out.println("兩個數組不相等");

}

方法二:

char[] a = {'a', 'b'};

char[] b = {'a', 'f'}; //對a, b 數組賦值操作

String sa = String.valueOf(a);

String sb = String.valueOf(b);

if( sa.equals(sb) )

System.out.println("兩個數組相等");

else

System.out.println("兩個數組不相等");

Ⅵ java怎麼比較兩個對象是否相等

一、java中的基本數據類型(int、double、short、long、byte、float、boolean、char)判斷是否相等,直接使用"=="就行了,相等返回true,否則,返回false。

二、但是java中的引用類型的對象比較變態,假設有兩個引用對象obj1,obj2,

obj1==obj2 判斷是obj1,obj2這兩個引用變數是否相等,即它們所指向的對象是否為同一個對象。言外之意就是要求兩個變數所指內存地址相等的時候,才能返回true,每個對象都有自己的一塊內存,因此必須指向同一個對象才返回ture。

三、如果想要自定義兩個對象(不是一個對象,即這兩個對象分別有自己的一塊內存)是否相等的規則,那麼必須在對象的類定義中重寫equals()方法,如果不重寫equals()方法的話,默認的比較方式是比較兩個對象是否為同一個對象。

在Java API中,有些類重寫了equals()方法,它們的比較規則是:當且僅當該equals方法參數不是 null,兩個變數的類型、內容都相同,則比較結果為true。這些類包括:String、Double、Float、Long、Integer、Short、Byte、、Boolean、BigDecimal、BigInteger等等,太多太多了,但是常見的就這些了,具體可以查看API中類的equals()方法,就知道了。

Ⅶ Java compareTo方法是怎麼比較的

ToDoItem類的對象有3屬性,

這個compareTo()方法則是將一個ToDoItem對象作為參數,與調用該方法的對象做比較;

比較的方式:先比primary屬性的大小,如果相等,則比較secondary屬性,不比較item屬性。

比較的結果:如果比參數對象大,則返回+1,如果相等,則返回0,如果比參數小,則返回-1。

這樣說應該講明白了吧,如果有幫助採納下。

BTW平時這些問題可以多看幾個類似w3shool、runoob這些教程網站,很快就可以弄懂。

Ⅷ Java中怎麼比較兩個字元串是否相等

JAVA比較兩個字元串是否相等可以用equals方法或者是「==」。

equals 方法常常用來檢測兩個對象是否相等,即兩個對象的內容是否相等,如果只是比較對象的內容,而不比較對象來源和功能類型時,常用此方法。

「==」常用於用於比較引用和比較基本數據類型時是否具有不同的功能,比較基本數據類型,如果兩個值相同,則結果為true而在比較引用時,如果引用指向內存中的同一對象,結果為true。

(8)java比較方法擴展閱讀

equals 方法的特點:

1、自反性:x.equals(x)返回true;

2、對稱性:若x.equals(y)為true,則y.equals(x)亦為true;

3、傳遞性:若x.equals(y)為true且y.equals(z)也為true,則x.equals(z)亦為true;

4、一致性:x.equals(y)的第一次調用為true,那麼x.equals(y)的第二次、第三次、第n次調用也均為true,前提條件是沒有修改x也沒有修改y;

5、對於非空引用x,x.equals(null)永遠返回為false。

Ⅸ 在Java中用於比較的類和方法有哪些

對於Class
A;Class
B兩個類,比較它們有兩種比較
A
==
B
比較內存地址
A.equals(B)默認比較hashcode
第一種一般不達不到我們要的效果,所以一般選擇覆蓋類的equals方法來實現比較類
一般比較兩個類,會比較是不是一種類,類里的私有變數是否相等,具體看你的邏輯要求是什麼樣的!

Ⅹ java比較兩字元串是否相等有幾種方法

equal()

閱讀全文

與java比較方法相關的資料

熱點內容
pdf手寫筆 瀏覽:173
別永遠傷在童年pdf 瀏覽:984
愛上北斗星男友在哪個app上看 瀏覽:414
主力散戶派發源碼 瀏覽:665
linux如何修復伺服器時間 瀏覽:55
榮縣優途網約車app叫什麼 瀏覽:473
百姓網app截圖是什麼意思 瀏覽:222
php如何嵌入html 瀏覽:811
解壓專家怎麼傳輸 瀏覽:743
如何共享伺服器的網路連接 瀏覽:132
程序員簡易表白代碼 瀏覽:167
什麼是無線加密狗 瀏覽:64
國家反詐中心app為什麼會彈出 瀏覽:68
cad壓縮圖列印 瀏覽:102
網頁打開速度與伺服器有什麼關系 瀏覽:863
android開發技術文檔 瀏覽:65
32單片機寫程序 瀏覽:52
三星雙清無命令 瀏覽:839
漢壽小程序源碼 瀏覽:345
易助erp雲伺服器 瀏覽:533