2012-07-19 138 views
2

long類型值的數組 - long[]轉換爲Long對象 - Long[]的數組的最有效方法是什麼?將long []轉換爲Long []的最有效方法

+1

它永遠不會非常高效...... – 2012-07-19 10:00:30

+0

它可能會爲每個昂貴的元素創建一個新對象。這最好的事情是避免首先要做到這一點。 – 2012-07-19 10:55:26

回答

5

愚蠢的方式。

Long[] result = new Long[array.length]; 
for (int i = 0; i < array.length; i++) { 
    result[i] = array[i]; 
} 

沒有其他更好的方法。抱歉。

(爲什麼你需要做到這一點,我可能會問,如果我們知道你爲什麼需要這些盒裝的有可能是更好的選擇?)

+0

不要道歉,這不是你的錯。 ;-)) 謝謝 ! – hsz 2012-07-19 09:54:11

+0

我有一個util泛型方法,所以我不能使用基本類型。 – hsz 2012-07-19 09:55:52

+2

hsz,我想這個問題更多的是建議你不要在數組級別轉換,但可能直接從使用站點的原始'long'轉換。 – 2012-07-19 09:58:22

2

你應該嘗試的Apache公地 - ArrayUtils

static java.lang.Long[] toObject(long[] array) 
+0

當然,這在內部完全是一回事。 – 2012-07-19 09:55:04

+1

@LouisWasserman Checked,你的解決方案實際上** ** **'ArrayUtils',因爲他們無條件地實例化Long。 – 2012-07-19 09:56:37

0

沒有iteration這是不可能的。您將明確地將它們包裝在Long中使用autoboxing

相關問題