码迷,mamicode.com
首页 > 其他好文 > 详细

== 和 equals区别

时间:2021-07-14 18:50:51      阅读:0      评论:0      收藏:0      [点我收藏+]

标签:内容   直接   ==   实例   图片   equal   stat   java   测试   

== equals是两种字符串的方式

区别

== 是比较两个对象的引用地址值
equals是比较两个对象的具体内容

示例

package com.oop.demo06;

public class Demo01 {
    public static void main(String[] args) {
        String s1 = "yyll"; // 直接赋值方式
        String s2 = "yyll";
        String s3 = new String("yyll"); // 实例化String类方式
        String s4 = new String("yyll");
        String s5 = s3;

        // == 比较的是引用的地址值
        System.out.println("s1 == s2= => :" + (s1 == s2));
        System.out.println("s1 == s3= => :" + (s1 == s3));
        System.out.println("s3 == s4 ==> :" + (s3 == s4));
        System.out.println("s3 == s5 ==> :" + (s3 == s5));

        System.out.println("==================================");
        // equals比较的是具体内容
        System.out.println("s1.equals(s2) ==> :" + (s1.equals(s2)));
        System.out.println("s1.equals(s3) ==> :" + (s1.equals(s3)));
        System.out.println("s1.equals(s4) ==> :" + (s1.equals(s4)));
        System.out.println("s1.equals(s5) ==> :" + (s1.equals(s5)));
    }
}

测试结果

技术图片


内存图
技术图片

小结

  1. 直接赋值方式:创建的对象存放在字符串对象池里 如果再创建一个一模一样的 不会再创建
  2. 实例化方式: 每次创建都会分配一个新的内存空间出来

== 和 equals区别

标签:内容   直接   ==   实例   图片   equal   stat   java   测试   

原文地址:https://www.cnblogs.com/juanbao/p/15010404.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!