Scala 如何在不使用Java反射API的情况下从HashMap中获取对象?

Scala 如何在不使用Java反射API的情况下从HashMap中获取对象?,scala,reflection,Scala,Reflection,假设我有一个HashMap: val userMap = new HashMap[String, String] userMap += "username" -> "user" userMap += "password" -> "pass" 和一个对象: username:String = "" password:String = "" 在不使用Java反射API(带或不带注释)的情况下,将HashMap中的值放入对象的最佳方式是什么 这可能类似于这个问题:由于您不希望反射,因此

假设我有一个HashMap:

val userMap = new HashMap[String, String]
userMap += "username" -> "user"
userMap += "password" -> "pass"
和一个对象:

username:String = ""
password:String = ""
在不使用Java反射API(带或不带注释)的情况下,将HashMap中的值放入对象的最佳方式是什么


这可能类似于这个问题:

由于您不希望反射,因此无法自动匹配名称。但是手工操作并不难

给定

我只是

for {
  name <- userMap.get("username")
  pwd <- userMap.get("password")
} yield new User(name,pwd)
用于{

名称不应该是
userMap.get()
?@missingfaktor-确实应该是。现在已修复。
for {
  name <- userMap.get("username")
  pwd <- userMap.get("password")
} yield new User(name,pwd)