什么是Scala中的=!=运算符?

时间:2018-09-27 20:18:14

标签: scala apache-spark

我在用Scala编写的Spark应用程序中遇到了这个运算符,并希望了解它。例子...

val filtered = df
    .filter(lower('entry) =!= "blah blah")

谢谢。

3 个答案:

答案 0 :(得分:5)

与其他任何方法名称一样,这只是一个方法名称。它没有任何特殊含义。

它也不是Scala中众所周知的方法名称。它似乎来自某个图书馆。您需要查看所使用的任何库的文档以弄清楚它的作用。

在这种情况下,它似乎是org.apache.spark.sql.Column.=!=

  

def =!=(other: Any): Column

     

不平等测试。

// Scala:
df.select( df("colA") =!= df("colB") )
df.select( !(df("colA") === df("colB")) )

// Java:
import static org.apache.spark.sql.functions.*;
df.filter( col("colA").notEqual(col("colB")) );

答案 1 :(得分:2)

这就是this method in org.apache.spark.sql.Column,它是不平等测试。

答案 2 :(得分:1)

您必须使用=!=运算符,以便您不只是比较未评估的列 表达式转换为字符串,但取值为评估值

source:spark-权威指南