2016-08-31 8 views
0

Пусть говорят, у меня есть список строк:Cast или преобразовать список строки к определенному объекту пользователя в Scala

val myList: List[String] = List("A", "B", "C") 

Есть ли способ, чтобы преобразовать/отбрасывать этот список к определенному объекту пользователя без жесткого кодирования , что-то вдоль линий:

case class MyClass(name1: String, name2: String, name3: String) 
val result: MyClass = myList.asInstanceOf[MyClass] 
+0

вы получите исключение в класс произнесения, если вы делаете это – pamu

+0

почему вы должны набрать актерский .. какова цель – pamu

+1

'случае учащемуся MyClass (имена: Список [String ]) 'и передать список. – sebszyller

ответ

1
val result: MyClass = myList match { 
    case name1 :: name2 :: name3 :: Nil => MyClass(name1, name2, name3) 
    case _ => MyClass("", "", "") // default case, if list has less than 3 strings 
} 
+4

Должен иметь 'Nil' не' _', поэтому он соответствует точно 3 строкам в 'List' –

+0

@TheArchetypalPaul Исправлено! –

 Смежные вопросы

  • Нет связанных вопросов^_^