10、Scala 编程:对象比较、运算符、包装类与有理数类设计

Scala 编程:对象比较、运算符、包装类与有理数类设计

1. Scala 中的对象比较

在 Scala 里,只要不同对象内容相同,且 equals 方法基于内容编写,对象比较结果就为 true 。例如:

scala> ("he" + "llo") == "hello"
res40: Boolean = true

Scala 的 == 与 Java 的有所区别。Java 里 == 可用于比较基本类型和引用类型。对于基本类型,Java 的 == 和 Scala 一样比较值是否相等;但对于引用类型,Java 的 == 比较引用是否相等,即两个变量是否指向 JVM 堆上的同一个对象。Scala 也提供了比较引用相等的方法 eq ,不过 eq 及其相反的 ne 仅适用于直接映射到 Java 对象的对象。

2. Scala 运算符优先级与结合性

运算符优先级决定表达式中各部分的计算顺序。例如 2 + 2 * 7 结果为 16 而非 28,因为 * 运算符优先级高于 + 运算符,所以先计算乘法再计算加法。当然,也可以用括号明确计算顺序或覆盖优先级,如 (2 + 2) * 7 结果就是

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值