面试官:说说equals和== 的区别?
01、对于 == 来说:
如果比较的是基本数据类型变量,比较两个变量的值是否相等。(不一定数据类型相同)
如果比较的是引用数据类型变量,比较两个对象的地址值是否相同,即两个引用是否指向同一个地址值
测试基本数据类型:
int a = 20;
double c = 20.0;
char i = 20;
char j = 'A';
char m = 65;
boolean boo = true;
System.out.println(c==a);//true
System.out.println(a==i);//true
System.out.println(j==m);//true
System.out.println(boo==a);//编译不通过
其中, 布尔类型不能参与运算符==比较,
报以下错误:
Operator ‘==’ cannot be applied to ‘boolean’, ‘int’
测试引用数据类型:
public class Student {
private int age;
private String name;
public Student(int age, String name) {
this.</