java字元串的比較
1. 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。
第二種情況不是因為比較有與第一種有差異,而是因為聲明有差異,第二種聲明方法在聲明的時候有堆或堆棧 共用的現象,也就是說 在聲明的時候如果如果聲明為類屬性他會檢查在堆棧中有沒有與現在聲明的是相同結構的字元串。如果有就直接將地址指向已有內存地址。聲明在方法內部的局部變數原理一樣只不過他是堆棧共享。
2. JAVA如何進行字元串比較
1、首先,隨便創建一個有main方法的類。
3. java怎麼比較兩個字元數組的不同
字元數組是char [],字元串是String。char與String可以轉化的,如String str=charArray.toString(); 其中charArray是一個已知的字元數組。比較兩個字元串的方法:1、遍歷比較,String類型說到底也是一位數組,所以可以一個一個地比較。2、通過equals函數來對比,格式為strA.equals(strB); 返回一個布爾變數。這個函數主要判斷兩個字元串的值是不是相等。3、直接用"=="判斷是否相等。但是這種方法有缺點,比如說strA == strB,比較的不只是值,還有內存地址。4、strA.comparaTo.strB,返回一個整數(負數、零、正數)。這個函數是判斷兩個字元串的大小。