java.util. Итератор для списка Scala?

Пожалуйста, терпите меня, я все еще довольно нелюбезен со Скалой. У меня есть следующий код:

private lazy val keys : List[String] = obj.getKeys().asScala.toList

obj.getKeys возвращает java.util.Iterator

Вызов asScala через JavaConverers (который импортируется) в соответствии с документами.

java.util.Iterator <==> scala.collection.Iterator 

scala.collection.Iterator определяет

def toList : List[A] 

Исходя из этого, я считаю, что это должно работать, однако здесь есть ошибка компиляции.

[scalac]  <file>.scala:11: error: type mismatch;
[scalac]  found   : List[?0] where type ?0
[scalac]  required: List[String]
[scalac]  private lazy val keys : List[String] = obj.getKeys().asScala.toList
[scalac]  one error found

Я понимаю, что параметр типа или java Iterator является строкой Java, и я пытаюсь создать список строк Scala, но (возможно, наивно) подумал, что будет неявное преобразование.

Ответы на вопрос(4)

Ваш ответ на вопрос