相关疑难解决方法(0)

Scala Koans中的===(三重等于)运算符是什么?

我开始研究Scala Koans,它是围绕一系列单元测试组织的,需要填充空白.(这个想法是在类似的Ruby Koans项目之后建模的.)你启动了运行测试的sbt工具,并告诫:

[info]   + ***************************************** 
[info]   +  
[info]   +  
[info]   +  
[info]   + Please meditate on koan "None equals None" of suite "AboutEmptyValues" 
[info]   +  
[info]   +  
[info]   +  
[info]   + ***************************************** 

...所以你去看看这个单元测试它说:

test("None equals None") {
  assert(None === __)
}

......并且,在冥想之后,你意识到你应该填写这样的空白:

test("None equals None") {
  assert(None === None)
}

......然后它继续进行下一次单元测试.

不过,我的问题是这个===运算符是什么?我似乎无法在任何地方找到它.这是Scala Koans项目本身定义的DSL运营商吗?或者它是ScalaTest框架的一部分?或者在Scala中?

scala scalatest scala-2.9

52
推荐指数
1
解决办法
2万
查看次数

为什么我们必须覆盖Java中的equals()方法?

我对我们覆盖该.equals方法的原因感到困惑.

例如:

Test test1 = new Test(3);
Test test2 = new Test(3);

//The if comparison does the same thing that the overridden `.equals()` method does.
if(test1.equals(test2)){
    System.out.println("test1 and test2 are true in .equals()");
}

// Override .equals method.
public boolean equals(Object object) {
    if(object instanceof Test && ((Test)object).getValue() == this.t) {
        return true;
    } else {
        return false;
    }
}
Run Code Online (Sandbox Code Playgroud)

我不明白为什么我们必须覆盖该.equals()方法.

java overriding equals

18
推荐指数
3
解决办法
20万
查看次数

标签 统计

equals ×1

java ×1

overriding ×1

scala ×1

scala-2.9 ×1

scalatest ×1