以字符串类型为例:
1.定义字符串 String str1= “abcd”,str2 = "abcd";
此时用“==”比较str1与str2,输出结果为true
这样定义的两个字符串内容相同,在常量池中的内存地址相同,所以比较的结果相等
像下面这样定义:
输出结果为false,因为在定义str2时使用new关键字开辟了新的内存空间,而“==”在比较时,不只是比较字符串的内容,同时也比较字符串的内存地址,所以比较出的结果为false
2.使用equals比较时,无论怎样定义,因为equals只比较字符串内容,所以结果都会为true