私はスカラープログラミングには新しく、文字列からオプション[文字列]への変換が困難に直面しています。私が従うアプローチが正しいかどうかはわかりません。ここでは、コードは次のとおりです。ここで文字列をオプションに変換する[文字列]
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
}
}
}
、私はnewName
でoldName
のすべてのインスタンスを置き換える必要があります。 代わりに、私は応答の"1"
を得ています。 empType: Option[String]
のタイプをString
に変更することはできません(そのようにする必要があります)。 私はそれが非常に小さな変更が必要だが、何を配置することはできません知っている。 助けてください。
どの入力に対して、応答として '' 1 "'を得ますか? –