String变量有两种比较的方式:
(1)"=="比较的是对象的引用,简单来说就是比较两个String变量指向的地址
(2)equals比较的是变量内容
//首先我们使用“==”来比较两个String变量
class Haha
{
public static void main(String args[])
{
String name= new String("Hello");
String name_1 = "Hello";
String name_2 = name_1;
System.out.println("name与name_1比较的结果是:"+(name == name_1));
System.out.println("name与name_2比较的结果是:"+(name == name_2));
System.out.println("name_1与name_2比较的结果是:"+(name_1 == name_2));
}
}
/*
name与name_1比较的结果是:false
name与name_2比较的结果是:false
name_1与name_2比较的结果是:true
*/
解析:因为name与name_1的地址不同,
name与name_1的地址不同,
name_1与name_2地址相同
//然后我们使用equals方法来比较两个String变量
class Haha
{
public static void main(String args[])
{
String name= new String("Hello");
String name_1 = "Hello";
String name_2 = name_1;
System.out.println("name与name_1比较的结果是:"+(name.equals(name_1)));
System.out.println("name与name_2比较的结果是:"+(name.equals(name_2)));
System.out.println("name_1与name_2比较的结果是:"+(name_1.equals(name_2)));
}
}
/*
name与name_1比较的结果是:true
name与name_2比较的结果是:true
name_1与name_2比较的结果是:true
*/
解析:因为equals是用于内容的比较,所以全都为true