阅读背景:

scala 对象的相等

来源:互联网 

scala 对象的相等

1 equals方法

先看一个例子:

package cn.com.tengen.test.obj

case class Person(firstName: String, lastName: String, age: Int)

object Person extends App{
  val p1a = Person("Dean", "Wampler", 29)
  val p1b = Person("Dean", "Wampler", 29)
  val p2 = Person("Buck", "Trends", 30)

  println(p1a equals p1b) // 输出: true
  println(p1b equals p1a)// 输出: true
  println(p1a equals p2)// 输出: false
  println(p1a equals null)// 输出: false
  // println(null equals p1a)// 抛出 java.lang.NullPointerException异常
  // println(null equals p1b)// 抛出 java.lang.NullPointerException异常


  val l1 = Nil
  val l2 = List(p1a)
  val l3 = List(p1b)
  val l4 = List(p2)

  println(l1 equals  l2)// 输出: false
  println(l3 equals l2)// 输出: true
  println(l3 equals l4)// 输出: false

}p



你的当前访问异常,请进行认证后继续阅读剩余内容。

分享到: