我在我的项目中使用此代码,该代码独立于其他项目。
float trg1 = 2.3f;
String.format("%.2f",tgr1).replace(",", ".");
当我在其他项目中插入此项时,我会得到如下错误:
方法格式(String,Object [])不适用于参数格式(String,float)
答案 0 :(得分:6)
您是否曾尝试使用1.5之前的编译器,同时仍然针对JRE 1.5或更高版本?这就是我所能想到的......这应该绝对正常(当然,一旦你有正确的变量名称)。
您是否能够在失败的项目中使用其他Java 5功能(例如泛型)?
答案 1 :(得分:1)
听起来你是在使用不同的编译器版本。该代码使用1.6编译器正确编译。它不会做任何东西,但它肯定会编译并运行。
答案 2 :(得分:0)
看起来自动装箱并没有引起您的期望。如果你将第一行更改为:
,我几乎可以肯定你可以强迫它工作Float trg1 = 2.3f; // Notice uppercase Float
顺便说一下,您使用的是哪个版本的Java? Java 5应该将float
自动装入Float
,以便将其传递给varargs方法调用。如果我的建议修复程序也没有编译,那么你肯定在处理一个不了解自动装箱的1.5之前的编译器。