结果设置为 Scala HashMap

Sla*_*er6 2 casting scala resultset hashmap nothing

我正在尝试使用以下代码从 jdbc 调用中返回的对构建哈希图

val query = "select x,y from tablename"
val rs = stmt.executeQuery(query)
var lookup = new HashMap[String,String]()
while(rs.next()) {
  lookup = lookup + (rs.getString(1)-> rs.getString(2))
}
Run Code Online (Sandbox Code Playgroud)

并获得演员表异常。

scala.collection.immutable.HashMap 不能转换为 scala.runtime.Nothing$

如何解决这个问题以及发生了什么?有没有更好的,更像 Scala 的方法来处理这个问题,比如使用构建器?谢谢你的帮助。

Dim*_*ima 5

您正在用 Scala 编写 Java 代码。别。要么切换到java,要么花点时间学习真正的scala。你不会后悔的。

 Iterator
  .continually(rs.next)
  .takeWhile(identity)
  .map { _ => rs.getString(1) -> rs.getString(2) }
  .toMap
Run Code Online (Sandbox Code Playgroud)