首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

走上Java程序员道路 好的开端才能走得更远

到现在学习Java已经快一个月了,从最开始的盲目自信到现在明确认识到自己的不足、了解Java的强大,整个人都变得成熟许多。授课老师非常认真负责,那感觉就像是打破脑袋也要把知识传授给我们,同学之间相处融洽,学习氛围超级棒!

在一阶段的课程中,我们学习了很多知识点,包括Java基本语法、面向对象、继承、多态等。以下是我整理出的自认为比较难理解的知识点:“==”和equals 。

“==”:该操作符生成的是一个boolean结果,它计算的是操作数的值之间的关系。

在Java中有八种基本数据类型,整型数据:byte、short、int、long;浮点型:float、double;字符型:char;布尔型:boolean。对于这八种基本数据类型的变量,变量直接存储的是“值”。因此,在使用关系操作符“ == ”来进行比较时,比较的就是“值”本身。

在Java中,引用类型的变量存储的并不是“值”本身,而是与其关联的对象在内存中的地址。因此,对于关系操作符“==”:若操作数的类型是基本数据类型,则该关系操作符判断的是左右两边操作数的值是否相等;若操作数的类型是引用数据类型,则该关系操作符判断的是左右两边操作数的内存地址是否相同。也就是说,若此时返回true,则该操作符作用的一定是同一个对象。

equals :是Object 的实例方法,比较两个对象的content是否相同。

equals的初衷是判断两个对象的content是否相同;在Object类中,equals方法是用来比较两个对象的引用是否相等,即是否指向同一个对象。使用equals方法,内部实现分为三个步骤:首先比较引用是否相同(是否为同一对象);然后判断类型是否一致(是否为同一类型);最后比较内容是否一致。Java中所有内置的类的equals方法的实现步骤均是如此,特别是诸如 Integer、Double 等包装器类。

对象内容的比较是设计equals()的真正目的,equals 重写原则包括对称性、自反性、类推性、一致性等。

在千锋学习Java的每一天我都过的很充实,尤其是知识都装在自己脑子里的时候特别的满足。五个月的课程说短不短,说长不长,但我相信这会是我们走上程序员之路的好开端,打好基础,有一个好起点,未来我们才能走得更远、更高。

  • 发表于:
  • 原文链接https://kuaibao.qq.com/s/20190910A0ICTI00?refer=cp_1026
  • 腾讯「腾讯云开发者社区」是腾讯内容开放平台帐号(企鹅号)传播渠道之一,根据《腾讯内容开放平台服务协议》转载发布内容。
  • 如有侵权,请联系 cloudcommunity@tencent.com 删除。

扫码

添加站长 进交流群

领取专属 10元无门槛券

私享最新 技术干货

扫码加入开发者社群
领券