本文主要是介绍String values are compared using '==',not equals(),希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!
安卓小白在模拟登录的时候,发现无论用户名和密码是否正确,结果都是“ 您的打开方式有误,请重新尝试!”。在检查的时候发现了一对发黄的’==’,鼠标搬到= =的位置,就出现了那句话,如图所示:
意思大概就是说,代码使用‘ ==’来比较字符串的值,而不是equals()
所以不太聪明的我立马将代码改成:
if(username.equals(us) && password.equals(pw)){xxxx
}
运行一遍,O的K。
也就是说在Java中比较两个String对象的值,我们要用equals(),而不能用==(因为它比较的是两个对象的引用地址,即内存地址是否相同);而对于基本数据类型,如byte、short、int等,==比较的就是它们的值了。
(可以去查看java.lang.String中equals()的定义就会明白啦)
这篇关于String values are compared using '==',not equals()的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!