What is the difference between a.ne(null) and a != null in Scala?

后端 未结 2 649
心在旅途
心在旅途 2021-01-04 02:38

I have been always using

a != null

to check that a is not a null reference. But now I\'ve met another way used:



        
2条回答
  •  陌清茗
    陌清茗 (楼主)
    2021-01-04 03:22

    Like @Jack said x ne null is equal to !(x eq null). The difference between x != null and x ne null is that != checks for value equality and ne checks for reference equality.

    Example:

    scala> case class Foo(x: Int)
    defined class Foo
    
    scala> Foo(2) != Foo(2)
    res0: Boolean = false
    
    scala> Foo(2) ne Foo(2)
    res1: Boolean = true
    

提交回复
热议问题