Java中兩個(gè)字符串進(jìn)行大小比較的方法
一:大小比較:使用 String.compareTo 方法
compareTo() 的返回值是int, 它是先比較對(duì)應(yīng)字符的大小(ASCII碼順序)
1、如果字符串相等返回值0
2、如果第一個(gè)字符和參數(shù)的第一個(gè)字符不等,結(jié)束比較,返回他們之間的差值(ascii碼值)
(負(fù)值前字符串的值小于后字符串,正值前字符串大于后字符串)
3、如果第一個(gè)字符和參數(shù)的第一個(gè)字符相等,則以第二個(gè)字符和參數(shù)的第二個(gè)字符做比較,以此類推,
直至比較的字符或被比較的字符有一方全比較完,這時(shí)就比較字符的長(zhǎng)度.
例:
String s1 = "abc";
String s2 = "abcd";
String s3 = "abcdfg";
String s4 = "1bcdfg";
String s5 = "cdfg";
System.out.println( s1.compareTo(s2) ); // -1 (前面相等,s1長(zhǎng)度小1)
System.out.println( s1.compareTo(s3) ); // -3 (前面相等,s1長(zhǎng)度小3)
System.out.println( s1.compareTo(s4) ); // 48 ("a"的ASCII碼是97,"1"的的ASCII碼是49,所以返回48)
System.out.println( s1.compareTo(s5) ); // -2 ("a"的ASCII碼是97,"c"的ASCII碼是99,所以返回-2)
二:字符串是否相等比較
只能使用equals()方法,不能使用“==”。
下面介紹下java中兩個(gè)字符串如何比較大小
使用 String.compareTo 方法:
compareTo() 的返回值是int, 它是先比較對(duì)應(yīng)字符的大小(ASCII碼順序)
1、如果字符串相等返回值0
2、如果第一個(gè)字符和參數(shù)的第一個(gè)字符不等,結(jié)束比較,返回他們之間的差值(ascii碼值)(負(fù)值前字符串的值小于后字符串,正值前字符串大于后字符串)
3、如果第一個(gè)字符和參數(shù)的第一個(gè)字符相等,則以第二個(gè)字符和參數(shù)的第二個(gè)字符做比較,以此類推,直至比較的字符或被比較的字符有一方全比較完,這時(shí)就比較字符的長(zhǎng)度.
例:
String s1 = "abc";
String s2 = "abcd";
String s3 = "abcdfg";
String s4 = "1bcdfg";
String s5 = "cdfg";
System.out.println( s1.compareTo(s2) ); // -1 (前面相等,s1長(zhǎng)度小1)
System.out.println( s1.compareTo(s3) ); // -3 (前面相等,s1長(zhǎng)度小3)
System.out.println( s1.compareTo(s4) ); // 48 ("a"的ASCII碼是97,"1"的的ASCII碼是49,所以返回48)
System.out.println( s1.compareTo(s5) ); // -2 ("a"的ASCII碼是97,"c"的ASCII碼是99,所以返回-2)到此這篇關(guān)于Java中兩個(gè)字符串進(jìn)行大小比較的文章就介紹到這了,更多相關(guān)Java比較字符串大小內(nèi)容請(qǐng)搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!
相關(guān)文章
Mybatis-Plus設(shè)置全局或者局部ID自增的實(shí)現(xiàn)
在使用Mybatis-Plus新增的時(shí)候,我們往往想要id隨著數(shù)據(jù)庫自增,本文主要介紹了Mybatis-Plus設(shè)置全局或者局部ID自增的實(shí)現(xiàn),具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧2023-01-01
Java中的字符流FileReader與FileWriter詳解
這篇文章主要介紹了Java中的字符流FileReader與FileWriter詳解,在Java中,使用Unicode約定存儲(chǔ)字符,字符流自動(dòng)允許我們逐字符讀/寫數(shù)據(jù),有助于執(zhí)行16位Unicode的輸入和輸出,它是以reader和writer結(jié)尾的,需要的朋友可以參考下2023-10-10
解決在for循環(huán)中remove list報(bào)錯(cuò)越界的問題
這篇文章主要介紹了解決在for循環(huán)中remove list報(bào)錯(cuò)越界的問題,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。一起跟隨小編過來看看吧2020-12-12
MyBatis傳入?yún)?shù)的實(shí)例代碼
這篇文章主要介紹了MyBatis傳入?yún)?shù)的實(shí)例代碼的相關(guān)資料,非常不錯(cuò),具有參考借鑒價(jià)值,需要的朋友可以參考下2016-06-06
Java實(shí)現(xiàn)系統(tǒng)限流的示例代碼
限流是保障系統(tǒng)高可用的方式之一,也是大廠高頻面試題,它在微服務(wù)系統(tǒng)中,緩存、限流、熔斷是保證系統(tǒng)高可用的三板斧,所以本文我們就來聊聊如何實(shí)現(xiàn)系統(tǒng)限流吧2023-09-09

