equals 相等
特点:判断两个对象是否想定,两个对象做比较==时,会自动调用equals方法。
eg:
class Student(var name:String, var id:String, var age:Int) {
override def equals(obj: Any): Boolean = {
println("调用了equals..")
println(this, obj)
val other = obj.asInstanceOf[Student]
this.name == other.name && this.id == other.id
}
override def toString: String = s"Student(${name},${id},${age})"
}
def main(args: Array[String]): Unit = {
val stu1 = new Student("小花","20230012",18)
val stu2 = new Student("小明","20230012",18)
val stu3 = new Student("小明","20230012",18)
println(stu1 == stu2)
println(stu1 == stu3)
}
}