• ==与equal在java中应用的感悟


    今天又算是长见识了。了解了下平时不注意的equal和==的区别。

    不管是==又或是equal都是用来比较相同与否。当问题就在这里了,比较什么相同呢?

    我的在日常的比较无非也就是两种:1、基本数据类型之间的比较,2、引用类型数据之间的比较。

    1、在基本数据类型之间的比较的时候。==与equal是一样的。都是比较两个值是否相同,相同为true不同为false。

    2、在引用数据类型之间的比较的时候。==与equal也是一样的,都是比较栈内存中的地址是否相同,相同为true。不同为false。

    一般情况下总会有极个别的刺头,这里也不例外。String。大家都知道这是一个特殊的引用类型,对于两个字符串比较,不管是==或是equal

    两者比较都是比较字符串是否相同。

     String a1="a";

    String a2="a";

    if(a1==a2){

      sysout("Y")

    }

     这里是会输出Y的

    引申:我们知道如果创建两个String对象时,内存的地址是不同的。

    但是,还要注意一点,就是如下

    String a1=new String("a");

    String a2=new String("a");

    String a3="a";

    上面三个两两比较结果不相同,因为如果明确使用对象就要按引用类型来说了。

  • 相关阅读:
    OO第三单元总结
    OO第二单元总结
    OO第一单元总结
    OO第四单元总结
    OO第三单元总结
    OO第二单元总结
    OO第一单元总结
    BUAA_OO_2020_Total_Summary
    BUAA_OO_2020_Unit3_Summary
    BUAA_OO_2020_Unit2_Summary
  • 原文地址:https://www.cnblogs.com/wangxiangstudy/p/4630459.html
Copyright © 2020-2023  润新知