java中如何比较字符串?很多新手对此不是很清楚,为了帮助大家解决这个难题,下面小编将为大家详细讲解,有这方面需求的人可以来学习下,希望你能有所收获。
Java为我们提供了compareTo、“==”、equals对字符串进行比较,下面介绍一下他们的区别。
示例一:compareTo比较数据的大小
compareTo(string) compareToIgnoreCase(String) compareTo(object string)
该示例通过使用上面的函数比较两个字符串,并返回一个int类型。若字符串等于参数字符串、则返回0,字符串小于参数字符串、则返回值小于0,字符串大于参数字符串、返回值大于0。
判断字符串大小的依据是根据他们在字典中的顺序决定的。
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(),“==”方式比较字符串
使用equals()和==,区别在于equals比较的是内容是否相等、==比较的是引用的变量地址是否相等。
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); } }
执行上面代码产生下面结果
s1:hello s2:hello s3:hello s4:hello ----------比较内容是否相等--------------- true true true ----------比较引用地址是否相等--------------- true false false
看完上述内容是否对您有帮助呢?如果还想对相关知识有进一步的了解或阅读更多相关文章,请关注亿速云行业资讯频道,感谢您对亿速云的支持。
免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:is@yisu.com进行举报,并提供相关证据,一经查实,将立刻删除涉嫌侵权内容。