2011-08-17 22 views

回答

10

試試這個:

var lastSecurity = "" 

def allSecurities = for { 
    security <- lastTrade.keySet.toList 
} yield { 
    lastSecurity = security 
    security 
} 
1

這就像

var a = 1 
{ 
    var a = 2 
    println(a) 
} 
println(a) 

它打印

2 
1 

不要緊,這些是否var S或val秒。在Scala中,您可以對來自外部作用域的變量進行遮蔽,但當您不得不使用val關鍵字(即用於理解,匿名函數和模式匹配)時,可能會導致一些混淆。