赞
踩
Scala底层 == 使用的是equals()
程序员比较两个量的时候,谁来没事比较内存地址?
Java中引用数据类型比较地址,基本数据类型比较值
equals如果对象中重写toString比较内容是否相等;否则比较地址;
2.如果非要比较内存地址使用eq //切忌,使用eq不要使用基本数据类型
var a ="100"
var b ="100"
println(a==b) //true
println(a eq b) //true
var name3 = new String("123")
var name4 = new String("123")
println(name3 eq name4) //false
双等号,在scala中表示非空equals
**
**
// 4.scala认为万物皆对象
val i = 1.*(100)
val i1 = 1*(100) //*()就是一个方法,小数点可以省略
val r = 1+1
println(i) //100
由于此道理原来的eq写法进行改进如下
println(name3.eq(name4))
println(name3 equals name4) //只要是引用数据类型使用方法,即可省略小数点
println(name3 toString())
println(name3 toString)
Copyright © 2003-2013 www.wpsshop.cn 版权所有,并保留所有权利。