Scala - 在模式定义中删除类型注释

时间:2015-03-20 10:25:55

标签: scala design-patterns types annotations matching

class MyClass

val list: List[Any] = ...

list match {
  case List(t: MyClass) => 
  case _ => 
}

第一宗案件有什么问题?在IDEA中,我一直看到一个黄色指示器,告诉我"从模式定义中移除类型注释"。

1 个答案:

答案 0 :(得分:0)

没有错,假设你真的想要匹配类MyClass的一个元素的列表。如果您有一个List[MyClass],此警告将非常有用,在这种情况下,如果列表元素的类型发生更改,则检查将是多余的并且很容易被遗忘;可能IDEA检查是针对这些情况,但不能将它们与您拥有的那些区分开来。