3、==和equals的区别

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

equals,Object中默认也是采用==比较,通常会重写,重写后比较的是内容。

 1 package com.moon.java100;
 2 
 3 public class CaseDemo1 {
 4 
 5     public static void main(String[] args) {
 6 
 7         String str1 = "Hello";
 8         String str2 = new String("Hello");
 9         String str3 = str2;
10         System.out.println(str1 == str2);//false
11         System.out.println(str1 == str3);//false
12         System.out.println(str2 == str3);//true
13         System.out.println(str1.equals(str2));//true
14         System.out.println(str1.equals(str3));//true
15         System.out.println(str2.equals(str3));//true
16 
17     }
18 
19 }

 

posted @ 2022-02-01 20:39  谁怕?一蓑烟雨任平生  阅读(12)  评论(0)    收藏  举报