Scala语法查询,返回类型推断

时间:2013-02-08 20:13:45

标签: scala

代码似乎微不足道,但我不理解返回值中的一件事:

trait JdbcTemplate {
  def query(psc: PreparedStatementCreator,
            rowMapper: RowMapper): List[_]
}

List[_]究竟是什么意思?不会使用List[Any]暗示同样的事情吗?我在哪里可以阅读这些差异?

2 个答案:

答案 0 :(得分:2)

Any是一种特定的,已知的(虽然完全包容)类型。将下划线用作类型参数是对于所谓的“存在类型”的更麻烦和更通用的语法的简写。存在类型是非特定的:他们说至少有一种类型可以在这里。它们是通用量化的双重性,是对更常用的无界类型参数的解释。例如,def method[T](t: T) ...。在此构造中,T可以绑定到任何类型,但在实例化该类型的每个位置(每次调用该方法),它都绑定到特定类型。

答案 1 :(得分:1)

鉴于_表示您不关心类型和Any is supertype of everything,两者都是相同的。

相关问题