Java基礎(一)字符串之如何比較字符串

在Java中,如何進行字符串的比較?Java爲咱們提供了compareTo、「==」、equals對字符串進行比較,下面介紹一下他們的區別。函數

示例一:compareTo比較數據的大小spa

compareTo(string) compareToIgnoreCase(String) compareTo(object string)

該示例經過使用上面的函數比較兩個字符串,並返回一個int類型。若字符串等於參數字符串、則返回0,字符串小於參數字符串、則返回值小於0,字符串大於參數字符串、返回值大於0。code

判斷字符串大小的依據是根據他們在字典中的順序決定的。blog

package com.de.test; /** * Java字符串比較大小 */
public class StringA { public static void main(String[] args){ String str = "String"; String anotherStr = "string"; Object objstr = str; System.out.println(str.compareTo(anotherStr)); System.out.println(str.compareToIgnoreCase(anotherStr)); System.out.println(str.compareTo(objstr.toString())); } }

執行上面代碼產生下面結果字符串

-32
0
0

示例二:使用equals(),「==」方式比較字符串string

  使用equals()和==,區別在於equals比較的是內容是否相等、==比較的是引用的變量地址是否相等。class

package com.de.test; public class StringA { public static void main(String[] args){ String s1 = "hello"; String s2 = "hello"; String s3 = new String("hello"); String s4 = new String("hello"); System.out.println("s1:" + s1); System.out.println("s2:" + s2); System.out.println("s3:" + s3); System.out.println("s4:" + s4); System.out.println("----------比較內容是否相等---------------"); System.out.println(s1.equals(s2)); System.out.println(s2.equals(s3)); System.out.println(s3.equals(s4)); System.out.println("----------比較引用地址是否相等---------------"); System.out.println(s1 == s2); System.out.println(s2 == s3); System.out.println(s3 == s4); } }

執行上面代碼產生下面結果test

s1:hello s2:hello s3:hello s4:hello ----------比較內容是否相等---------------
true
true
true
----------比較引用地址是否相等---------------
true
false
false
相關文章
相關標籤/搜索