我有以下案例类。
case class STUDENT(studentName:String,marks:Array[String],gender:String,mobileNumber:Option[String])
我有以下 Json 字符串。
"studentName": "test_filter",
"marks":"['10','20']",
"gender":"M",
"mobileNumber": "*****"
以及下面解析字符串的函数,实际上我将 json 作为字符串传递。
def readStudentConfig(config:String) :STUDENT ={
val gson = new Gson()
gson.fromJson(config,classOf[STUDENT])
}
但它给我一个错误,比如
Failed to invoke public scala.Option() with no args
编辑问题以便更好地理解。
我有以下Json字符串。如果我传递解析器正在工作的mobileNumber(需要将数据类型案例类的最后一个参数更改为String)
{
"studentName": "test_filter",
"marks":"['10','20']",
"gender":"M",
"mobileNumber": "*****"
}
如果我将mobileNumber 设为空白,即“mobileNumber”:'';代码会中断。像那样
{
"studentName": "test_filter",
"marks":"['10','20']",
"gender":"M",
"mobileNumber": ""
}