Ich bin neu in der Scala-Programmierung und habe Schwierigkeiten beim Konvertieren von String in Option [String]. Ich bin mir nicht sicher, ob der Ansatz, dem ich folge, korrekt ist oder nicht. Hier ist der Code:String in Option [String] konvertieren
EmpInfo.scala:
package model
case class EmpInfo(empType: Option[String]) extends Named {
override def name: String = clientName
}
EmpReconciliator.scala
import scalaz._
import Scalaz._
import scala.concurrent.Future
import play.api.mvc.Action
import play.api.mvc.AnyContent
import model.EmpInfo
trait EmpReconciliator[A] extends BaseController[A] {
val oldName = "abc"
val newName = "xyz"
def reconcileGeneric(genericResource: A) = {
(genericResource match {
case empInfo : EmpInfo => reconcileEmpInfo(empInfo)
case [email protected]_ => other
}).asInstanceOf[A]
}
def reconcileEmpInfo(empInfo: EmpInfo) = {
empInfo.empTypeType match {
case Some(oldName) => empInfo.copy(empType = Some(newName))
case _ => empInfo
}
}
}
Hier muss ich alle Instanzen oldName
mit newName
ersetzen. Aber stattdessen bekomme ich "1"
in der Antwort. Ich kann den Typ empType: Option[String]
nicht zu String
ändern (muss es so). Ich weiß, es ist eine sehr kleine Änderung erforderlich, aber kann nicht was platzieren. Bitte helfen.
Für welchen Eingang erhalten Sie '" 1 "' als Antwort? –