2012-11-16 39 views
-1

這將是寫相同的代碼在Java中我在C#這段代碼的最佳方式?:從.net到Java

Array.Resize(ref DCamposGraficoOperaciones[index].DatosMeses, 12); 

,我必須把它在Java中。非常感謝。我有一個名爲resizeDatosMeses在Java中調整陣列的方法,但是當我嘗試做了這種方式:

DCamposGraficoOperaciones[index].getDatosMeses()=resizeDatosMeses(DCamposGraficoOperaciones[index].getDatosMeses(), 12) 

我有一個錯誤是:賦值的左邊必須是一個變量,請你能指導我嗎?

非常感謝

+1

「我有一個錯誤」 - 有什麼錯?它編譯失敗嗎?如果是這樣,你會得到什麼錯誤? (我懷疑你會這樣做,但是它會學習如何提出更好的問題) –

回答

4

嫌疑你想:

DCamposGraficoOperaciones[index].setDatosMeses(
    resizeDatosMeses(DCamposGraficoOperaciones[index].getDatosMeses(), 12)); 

不能分配的方法調用,這是你試圖之前做的結果。

我會強烈鼓勵您將此行分成兩個單獨的語句 - 也開始遵循Java命名約定,這將禁止DCamposGraficoOperaciones作爲變量名稱。另外,目前尚不清楚爲什麼要調整數組的大小,但在.NET和Java中,使用更高級別的抽象(例如, .NET中的List<T>或Java中的ArrayList<T>

+0

如果我不必使用WS,我很樂意這樣做,因爲此方法是WS的一部分,並且不支持ArrayList由WS。 – zoit

0

在java中你不能重新調整數組的大小。你可以使用ArrayList,你可以爲它添加任意數量的值。

+0

您無法在.NET中調整數組大小。但是你可以編寫一個方法,它接受一個數組引用並返回一個新的數組引用,這是OP看起來已經有的。 –

+0

真的嗎? ArrayList似乎調整數組就好了。 :-)(好吧,在幕後它做了一些錯綜複雜的「魔法」,但仍然!) – Spoike