2014-11-26 2 views
0
userResultList.headOption match { 
    case Some(userResult) => userResult.user match { 
    case Some(user) => Some(user) 
    case _ => None 
    } 
    case _ => None 
} 

Что такое хороший способ упростить это?Scala- попытка упростить вложенное соответствие шаблону случая

+0

Что такое тип 'userResultList'? – Brian

+0

Это последовательность UserResults – jnfr

+0

Скопируйте и вставьте тип из REPL, чтобы мы не догадывались. – Brian

ответ

4

Ваш внутренний матч на userResult.user выглядит излишним, так что вы можете упростить внешний матч, используя flatMap:

userResultList.headOption.flatMap(_.user) 
Смежные вопросы