Scala中 ==、equals、eq的区别与联系

	var str1 = new String("abc")
    var str2 = "abc"

    println(s"str1==str2:${str1==str2}")    // true
    println(s"str1.equals(str2):${str1.equals(str2)}")  // true
    println(s"str1.eq(str2):${str1.eq(str2)}")    // false

特别说明: 在Scala中,所有的运算符都是类中的方法

  • ==在Scala中,是类中定义的方法,其底层调用时,调用的是此类的equals方法。
  • String的equals方法是重写过的,比较的是两个对象的具体的值。
  • eq方法比较的是两个对象的地址,其底层调用的是Java中的==比较运算符。
上一篇:eq方法


下一篇:$(".a").eq(0) 和 $(”.a“)[0]区别