每天一个面试题-==和equals比较

==和equals区别

  • 1. ==和equals的区别
    • 1.1 Object.class
    • 1.2 String.class
    • 1.3 测试

1. ==和equals的区别

  • ==对比的是栈中的值,基本数据类型是变量值,引用类型是堆中内存对象的地址

1.1 Object.class

equals:Object中默认也是采用==比较,通常会重写

每天一个面试题-==和equals比较_第1张图片

1.2 String.class

每天一个面试题-==和equals比较_第2张图片

1.3 测试

每天一个面试题-==和equals比较_第3张图片
每天一个面试题-==和equals比较_第4张图片

  • String str1=“张三”; 在常量池中
  • new String(“张三”); 在堆中
  • String str3=str2; 引用传递

你可能感兴趣的:(每天一个面试小技巧,java,开发语言)