2012-04-17 5 views

答えて

3

この試してみてください:あなたは、同時に複数のフィールドへのアクセスたい場合

scala> val names = persons.map(_.name) 
names: List[String] = List(a, b) 

それともこれを:

scala> val names = persons.map{ case Person(name, age) => name } 
names: List[String] = List(a, b) 
+0

おかげさまで、 – yons88

+2

@ yons88の 'case p:Person => p.name'は' _.name 'を書くためのもっと冗長な方法です。 '。 Scalaは既に 'List [Person]'上で動作していることを知っており、 'p => p.name'は単に' _.name'のより冗長なバージョンであるため、タイプ注釈は不要です。 – dhg

0

をあなたも基本的に for { person <- persons } yield person.name を行うことができます地図と同じもの