首页 > 技术文章 > Java "==和equals区别" 示例

Dylanblogs 2015-02-05 13:43 原文

import java.util.Calendar;
import java.util.Date;
import java.util.Locale;

public class test {
    public static void main(String[] args)
    {
        
        //        1、基本类型没有equals 方法
        int a=12;
        int b=12;
        System.out.println("------1、基本类型没有equals 方法------");
        System.out.println("a==b=>"+(a==b));
     //        2、特有对象创建方式的变量
        String s1="abc";
        String s2="abc";
        System.out.println("------2、特有对象创建方式的变量------");
        System.out.println("s1==s2=>"+(s1==s2));
        System.out.println("s1.equals(s2)=>"+(s1.equals(s2)));
        
     //        3、定义了equals的类,如String,比较的是内容值
        String objStr1=new String("abc");
        String objStr2=new String("abc");
        System.out.println("------3、定义了equals的类,如String,比较的是内容值------");
        System.out.println("objStr1==objStr2=>"+(objStr1==objStr2));
        System.out.println("objStr1.equals(objStr2)=>"+(objStr1.equals(objStr2)));
        
     //        4、一个类如果没有定义equals方法,那么默认继承Objects.equals 方法
        Object obj1=new Object();
        Object obj2=new Object();
        System.out.println("------4、一个类如果没有定义equals方法,那么默认继承Objects.equals 方法------");
        System.out.println("obj1==obj2=>"+(obj1==obj2));
        System.out.println("obj1.equals(obj2)=>"+(obj1.equals(obj2)));

        
    }
    
    
  
}

 

 

推荐阅读