2011-04-01 54 views
1

我在我的項目中使用此代碼,這是獨立於其他項目。Java String.format - 方法格式(字符串,對象[])不適用於參數格式(字符串,浮點數)

float trg1 = 2.3f; 
String.format("%.2f",tgr1).replace(",", "."); 

當我插入此在其他項目,該項目是從其他項目依賴我得到錯誤是這樣的:

方法格式(字符串,對象[])不適用的參數格式(字符串,浮)

+0

我沒有意識到'。'可以變成格式字符串中的','。 – 2011-04-01 14:31:45

回答

6

你有沒有嘗試過使用1.5之前的編譯器,同時仍然定位JRE 1.5或更高?這就是我能想到的......這應該工作得很好(當然,一旦你獲得了變量名稱)。

您是否能夠在失敗的項目中使用其他Java 5功能(例如泛型)?

+0

我忘了在其他項目上將JRE設置爲更高版本。 – Gogoo 2011-04-01 14:26:45

0

它看起來像自動裝箱不是在你可能期望的地方踢。如果你改變了第一線,我就幾乎一定可以迫使它的工作:

Float trg1 = 2.3f; // Notice uppercase Float 
您正在使用什麼版本的Java,順便

? Java 5應該將float自動裝箱到Float中,以便將它傳遞給可變參數方法調用。如果我建議的修補程序不能編譯,那麼你肯定會處理一個不理解自動裝箱的1.5之前的編譯器。

1

這聽起來像你在不同的編譯器版本。該代碼可以在1.6編譯器中正確編譯。它不是什麼,但它絕對編譯和運行。