写程序时常常需要进行字符串的比较,但如果用‘==’进行运算,往往会出问题。。原因在于Java中‘==’的运算并不是进行字符串内容是否相同的比较。'=='
运算符用于比较两个变量的值是否相等
例如
String s1 = new String("Hello");
String s2 = new String("Hello");
这里如果我们进行运算 “s1 == s2” 那么我们得到的返回值是False。这是因为因为s1
和s2
引用的不是同一个对象。
String s1 = "Hello";
String s2 = s1;
而像这样的情况,s1==s2返回的就是True,因为他们引用的对象是同一个Hello
此外如果只是想比较字符串内容是否相同可以使用函数“equals()”
例如
String s1 = new String("Hello");
String s2 = new String("Hello");
这时我们要想比较s1和s2的内容,就可以使用equals()函数
s1.equals(s2)
因为s1和s2内容相同,所以得到的返回值是True