Java String.format - 方法格式(String,Object [])不适用于参数格式(String,float)

时间:2011-04-01 14:20:04

标签: java

我在我的项目中使用此代码,该代码独立于其他项目。

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

当我在其他项目中插入此项时,我会得到如下错误:

  

方法格式(String,Object [])不适用于参数格式(String,float)

3 个答案:

答案 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之前的编译器。