調用未來的方法定義爲:在給定的情況下類<code>Person</code>循環
case class Person (first: String, middle: String, last: String)
和案件類Band
包含許多Person
S:
case class Band (name: String, members: List[Person])
我需要的是增加中間考慮到getMiddle
這個功能實際上是一個未來,所以在樂隊中的每個成員都是最初的人選。這是我的嘗試:
case class Person (first: String, middle: String, last: String)
case class Band (name: String, members: List[Person])
object TestFutures3 extends App {
val p1 = Person ("David", "", "Gahan")
val p2 = Person ("Martin", "", "Gore")
val band = Band ("Depeche Mode", List(p1,p2))
def getMiddle (name: String) = Future {
if (name == "Martin")
"L"
else
"X"
}
val membersWithMiddle = band.members.map {
p => Person(p.first, getMiddle(p.first).map(_), p.last)
}
println(membersWithMiddle)
Thread.sleep(5000)
}
未來的人選擇似乎更好,但如何將它集成在代碼中?你如何改變'band.members.map {'? – ps0604
band.members需要成爲'List [Future [Person]]' – soote
抱歉,我無法更改案例分類,它是傳統代碼 – ps0604