一直以为,对于java里面的基本类型或者封装类型进行比较判断不会出问题,可是今天发现自己的代码出问题了。
对于两个Integer对象,如果这两个对象值相同,但是引用的不是同一个对象,那么直接使用==进行比较,结果为false,如果使用equals方法比较,结果为true。
为此,还特意写了代码测试了其他情况,这都是以前忽略了的内容:
package com.lql;
public class Test {
public static void main(String[] args) {
Integer a = 1 ;
int b = 1 ;
Integer c = 1 ;
System.out.println(a==b);
System.out.println(a==c);
System.out.println(a.equals(c));
Integer aInteger = new Integer(1);
Integer bInteger = new Integer(1);
System.out.println(aInteger == bInteger);
System.out.println(aInteger.equals(bInteger));
}
}
运行结果截图:
可以看到,对于这些基本类型,如果声明的方式不一样,比较结果也是不一样的。
其中==比较的是对象的引用,但是对于未封装的基本类型仍然是比较的值。而equals方法,Object的默认实现是比较引用,每个class可能会重写该方法,但是总的来说,重写之后的方法都会比较内容。
但是对于String和Integer来说,情况有点不容,String首先会比较对象的已用,如果引用相同,那两个对象其实就是一个对象了,结果当然为true,如果引用不同,再判断String长度是否相等,然后判断里面的每个字符是否相同。而Integer直接比较了值。
看样子,还是不够细心!
- 大小: 14.3 KB
分享到:
相关推荐
看到这个主题,可能有些工程师会问:多少伏的功率MOSFET,耐压BVDSS不就是多少...这里面还有什么被忽略的内容?细节决定技术,今天研究功率MOSFET数据表中BVDSS所隐藏的一些有意思的细节,来理解这个参数所设定的含义。
这份名为“城市规划与设计之场地设计——一些容易被忽略的细节”的资料,着重探讨了场地设计中一些往往被忽视的关键因素。 首先,用地红线是场地设计的基础,它是建筑施工的边界,规定了建设活动的范围。设计师必须...
### Windows 8.1 Update 容易被忽略的细节 #### 一、更新特性与安全性 Windows 8.1 Update 是微软对Windows 8.1的一次重要更新,旨在提升用户体验并增强系统的安全性。该更新在Windows Update中被标记为“重要安全...
然而,由于缺乏经验,许多重要的细节往往被忽略。以下是一位资深婚礼跟拍摄影师根据自己的经验和观察,提醒大家注意的一些婚礼筹备中容易被忽视的细节。 **一、基础护肤** 新娘在婚礼前一周应加强皮肤保养,每天...
【广告最容易忽略的细节】 在广告创作中,细节往往决定成败。广告的品味与个人品味相似,需要对每个环节进行精心打磨。以下是一些广告中最容易被忽视的关键细节: 1. **广告的“清晰度”** - **画面清晰度**:...
然而,在卫浴装修中,安全细节往往是最容易被忽视,但又至关重要的环节。在夏季高温、潮湿的环境下,装修细节的把控显得更为重要。本文将为你揭示夏季卫浴装修中不能忽视的安全小细节,确保你的家居装修安全、美观又...
通过深入理解和重视这些细节,开发者可以更好地实现高效的算法,避免因忽视细节而导致的性能损失。 这篇论文提供了一个提醒,即在追求算法的整体效率时,不应忽视任何可能影响程序性能的小细节。开发者应该养成细致...
然而,我们可以从更宽泛的角度出发,探讨如何在信息技术领域识别并重视那些容易被忽视的细节。 ### IT领域中的“不该忽略的细节” #### 1. **用户体验的重要性** - 在软件开发和产品设计过程中,用户体验往往是最...
java程序员必看的文档,对于巩固java基础、提升技术能力的人来说绝对是最好的选择。
群策CRM管理系统与您看:12个不容忽视的微博微信营销小细节
4在PCB板边沿的元器件摆放方向与距离需要注意PCB 板 layout 中容易被忽视的 12 个细节由于一般都是用拼板来做PCB,因此在边沿附近的器件需要符合两个条件。第一就是与切割方向平行。(使器件的机械应力均匀,比如...
交际中不可忽略的细节.doc
我们往往会被那些宏伟的目标所吸引,却忽视了达到目标的过程中那些细小却至关重要的步骤。 正如陶行知先生的改名所体现的,行动的重要性是不可估量的。陶先生最终将“行”字置于“知”字之前,这正强调了知行合一的...
在进行Java编程时,许多开发者往往会忽略一些琐碎但至关重要的细节,这些细节可能在项目的开发和维护中造成不可预见的问题。为了解决这些问题,可以参考《Java Pazzlers》(Java解惑)这本书,其中对许多常见的编程...
在日常生活中,我们常常忽视了一些看似微不足道的细节,而这些细节却可能对我们的身体健康产生重大影响。以下是一些需要注意的生活习惯: 1. **饭后不宜立即吃水果**:进食后,食物需要大约2小时才能完全消化。立即...
在构建一个成功的网站时,许多细节往往被忽视,但这些细节却能显著影响用户体验、搜索引擎优化(SEO)以及整体的在线表现。以下是基于标题“网站建设不可忽视7个细节”所涉及的关键知识点: 1. **响应式设计**:...
以及一些OpenAI没有点名和宣扬的,可能会令人背后一凉的细节。 新Bing装载GPT-4 自然而然地,GPT-4发布之时,新Bing也已经装载了最新的版本。根据微软Bing副总裁Jordi Ribas在推特上所述,装载了GPT-4的新Bing已经将...
书中通过一系列生动的事例和数据,展示了忽视细节可能带来的严重后果,同时也揭示了在平凡中见卓越的真谛。 一、做好每一件小事是成就大事的基础 小事往往被人们忽视,但事实上,大事是由无数小事累积而成的。在...
小班老师教育随笔《不能忽略的细节》.doc