【发布时间】:2013-11-29 00:42:39
【问题描述】:
这里是菜鸟。如何创建一个可以用来代替以下 2 种方法的方法?
def makeListSavingsAccounts( numSavAccts: Int ): List[ SavingsAccount] = {
var saList: List[ BankAccount ] = List.empty
for ( saIDX <- 1 to numSavAccts ) saList :+= new SavingsAccount( 5000 )
saList
}
def makeSetSavingsAccounts( numSavAccts: Int ): Set[ SavingsAccount] = {
var saSet: Set[ BankAccount ] = Set.empty
for ( saIDX <- 1 to numSavAccts ) saSet += new SavingsAccount( 5000 )
saSet
}
类似的东西????
def makeCollectionSavingsAccounts[T <: ???[ SavingsAccount ]] ( numSavAccts:Int ): T = {
var saColl: T = ???.empty
for ( saIDX <- 1 to numSavAccts ) saColl ?????? new SavingsAccount( 5000 )
saColl
}
感谢您分享您丰富的 Scala 知识...
【问题讨论】:
-
为了简单起见:为什么不在第二种方法中只调用列表中的 toSet 方法?
-
感谢您的建议。我想我也可以先调用 toList 。我只是想了解如何使用泛型来实现这一点。