javastring比較
『壹』 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中的字元串比較方法
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中string和String的區別
java中string和String的區別如下:
String 一般指 java.lang.String 類,作為字元串
string 一般用來作為一個String類型對象的名稱
packagecom.qiu.lin.he;
publicclassCeShi{
publicstaticvoidmain(String[]args){
Stringstring="測試String和string的區別";
System.out.println(string);
}
}
結果如下:
『肆』 java String類型比較
string類型比較有很多種,我們主要來講一下用的比較多的兩種(equals和==)
例如:
String s1,s2,s3 = "abc", s4 ="abc" ;
s1 = new String("abc");
s2 = new String("abc");
那麼:
s1==s2 是 false //兩個變數的內存地址不一樣,也就是說它們指向的對象不 一樣,故不相等。
s1.equals(s2) 是 true //兩個變數的所包含的內容是abc,故相等。
總結:"=="比較的是兩個變數的內存地址,equals比較的是內容;
左上角有我頭像,歡迎來學習交流;
『伍』 java怎麼比較字元串大小
java的String類中有一個compareTo的方法。
publicclasstest{
publicstaticvoidmain(String[]args){
Stringa="abb";
Stringb="abc";
System.out.println(a.compareTo(b));
Stringa1="abc";
Stringb1="abc";
System.out.println(a1.compareTo(b1));
Stringa2="abd";
Stringb2="abc";
System.out.println(a2.compareTo(b2));
}
}
小於輸出負數,相等輸出0,大於輸出正數
『陸』 java中怎樣比較String和字元串是否相等
【關鍵字】java 比較 String int Integer BigDecimal 變數 相等【內容】在java中如果想要比較兩String類型變數是否相等,可以使用equals函數,函數寫法如下: String a;String b; a.equals(b)返回boolean類型。 如果比較String和字元串是否相等,如下寫法。"abc".equals(a); 這里字元串使用""括起來,不可以使用''。java中''表示的char型,所以''中只可以有一個字元。 parseInt(a)==b){}if(a. equals(c. toString())){}if(a. toString())){}使用Eclipse等IDE開發環境(Integrated Development Environment集成開發環境)的提示功能,可以很方便的找到這些函數.另外,也可以從java的一些API文檔中找到.
『柒』 java中string能比較大小嗎
字元串的比較用string.compareTo(str);不過不是單純的類似數字的比較大小。具體可以看源碼。
這個方法是作用:
1.從兩個字元串最開始位置匹配到兩個字元串較短的最後,即從0到Math.min(len1, len2),然後獲取每個位置的字元char1和char2,如果char1和char2不想等,返回char1-char2
2.如果0到Math.min(len1, len2)的位置的字元都相等,返回兩字元串長度的差,即length1-length2
具體來說
"a".compareTo("c")、"abc".compareTo("c")都返回-2。上述情況1
"abc".compareTo("abcdefg")返回-4。上述情況2