Java中的equals方法和==的区别

package com.song.test;

public class EqualsTest {
	public static void main(String[] args) {
		//equals 是判断两个变量或者实例指向同一个内存空间的值是不是相同
		//==是判断两个变量或者实例是不是指向同一个内存空间
		//通俗来说,==是判断两个人是不是住在同一个地址,而equals是判断同一个地址里住的人是不是同一个
		Integer aaa=new Integer(5);
		Integer bbb=new Integer(5);
		
		int a=10;
		int b=10;
		String str1=new String("justice");
		String str2=new String("justice");
		String str3;
		str3=str1;
		
		System.out.println(aaa==bbb);//false
		System.out.println(aaa.equals(bbb));//true
		System.out.println(a==b);//true ?
		
		System.out.println(str1==str2);//false
		System.out.println(str1.equals(str2));//true
		
		System.out.println(str1==str3);//?
		System.out.println(str1.equals(str3));//true
		
	}

}
posted @ 2020-06-02 22:08  Tamias  阅读(114)  评论(0编辑  收藏  举报