2012-02-17 81 views
28

有什麼辦法在java中返回一個新的數組而不先將它分配給一個變量? 下面是一個例子:返回一個數組而不分配給變量

public class Data { 
    private int a; 
    private int b; 
    private int c; 
    private int d; 
    public int[] getData() { 
     int[] data = {a,b,c,d}; 
     return data; 
    } 
} 

我想要做這樣的事情,但不工作:

public int[] getData() { 
    return {a,b,c,d}; 
} 

回答

55

你仍然需要創建陣列,即使你不把它分配給一個變量。試試這個:

public int[] getData() { 
    return new int[] {a,b,c,d}; 
} 

您的代碼示例沒有工作,因爲編譯器,一兩件事,還需要知道你正在嘗試通過靜態初始化{}創造什麼樣的類型。

+0

謝謝,非常豐富 – 2012-02-17 16:27:16

0
return new Integer[] {a,b,c,d}; // or 
return new int[] {a,b,c,d}; 
1
public int[] getData() { 
    return new int[]{a,b,c,d}; 
} 
1

您已經構建該函數返回時,以下應該解決您的問題的對象。

public int[] getData() { 
    return new int[]{a,b,c,d}; 
} 

希望這有助於

相關問題