Scala Either
示例
错误/成功的不同数据类型
def getPersonFromWebService(url: String): Either[String, Person] = {
val response = webServiceClient.get(url)
response.webService.status match {
case 200 => {
val person = parsePerson(response)
if(!isValid(person)) Left("Validation failed")
else Right(person)
}
case _ => Left(s"Request failed with error code $response.status")
}
}在任何一个值上进行模式匹配
getPersonFromWebService("http://some-webservice.com/person") match {
case Left(errorMessage) => println(errorMessage)
case Right(person) => println(person.surname)
}将任一值转换为选项
val maybePerson: Option[Person] = getPersonFromWebService("http://some-webservice.com/person").right.toOption
热门推荐
10 酒仙网红包祝福语简短
11 春节红包祝福语大全简短
12 公司拍摄祝福语大全简短
13 医师考试祝福语毕业简短
14 学弟英语高考祝福语简短
15 过年祝自己祝福语简短
16 生日祝福语简短致表哥
17 哥哥结婚妹妹祝福语 简短
18 英文节日祝福语简短唯美