Scala,Java,Python中的相等性

40 篇文章 1 订阅

在这里插入图片描述

Python

==:Python运行相等测试,递归地比较所有的内嵌对象。(比较内容是否相等)
is:对象一致性。Python测试二者是否是同一个对象。(比较内存地址是否相同)

Java

==
1. 值类型:自然相等性或者说内容相等性
2. 引用类型:对象一致性,是否是同一个对象
equals:应用类型的规约相等性(通常由用户自定义,往往定义成比较内容是否相等)

Scala

==
1. 值类型:内容相等性
2. 引用类型:几乎等价于equals,实际定义为:final def ==(that:any):= if(null eq this){null eq that} else {this equals that}
eq: 比较对象一致性
equals: 默认从Any继承下来,不重写的话,等价于eq。scala中的equals基本都是被重写过的,比较的是内容相等性。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值