2014-06-20 165 views
0

給定兩個類A(和B(A:A)我想用它們來構建這樣的名單:名稱對象

List(val a = A(), B(a))

如何實現這一目標?

回答

1

你不能像這樣調用List構造函數時聲明一個val。假設A和B是案例類別,請將您的示例分成兩行,如下所示:

val a = A() 
List(a, B(a)) 

應該有您想要的效果。

如果目標是減少a範圍,你可以做這樣的事情:

val l = { 
    val a = A() 
    List(a, B(a)) 
} 

a不會是l定義的外部可見。

+0

是的,我知道。我只是認爲有這樣的方式。謝謝。 –

+0

你想達到什麼目的?如果您試圖將範圍顯示在最小範圍內,我已編輯以包含一條建議。 – MHarris

+0

正是我所需要的,以限制範圍。我忘記了這種語法:)雖然沒有我想要的那麼短。非常感謝! –