我有一個List<Thing>
,我想將它傳遞給一個方法聲明doIt(final Thing... things)
。有沒有辦法做到這一點?傳遞一個列表作爲可變參數
代碼看起來東西這樣的:
public doIt(final Thing... things)
{
// things get done here
}
List<Thing> things = /* initialized with all my things */;
doIt(things);
該代碼顯然是行不通的,因爲doIt()
需要Thing
不List<Thing>
。
有沒有辦法在List中傳遞可變參數?
這是一個Android應用程序,但我不明白爲什麼該解決方案將不適用於任何Java的
它應該是'things.toArray(new Thing [things.size()]);'。 – Gray
這樣做。 (是的@Gray是正確的,它是一個更高效的傳遞適當大小的數組。) – xbakesx
@Gray:都是正確的 – newacct