2011-04-01 16 views
1

このコードは他のプロジェクトとは独立したプロジェクトで使用します。Java String.format - 引数形式(String、Object [])には適用できない形式(String、float)

引数の形式(文字列、フロートには適用されない方法でフォーマット(文字列、オブジェクト[]):

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

私は他のプロジェクトでこれを挿入し、私はこのようなエラーを取得し、他のプロジェクトから依存します)

+0

私はそれを認識しませんでした。書式文字列で '、'に変えることができます。 –

答えて

6

JRE 1.5以上をターゲットにしながら、何とか1.5以前のコンパイラを使用しようとしましたか?それは私が考えることができるすべてです...これは絶対にうまくいくはずです(もちろん、変数名があれば)。

障害のあるプロジェクトで他のJava 5の機能(ジェネリックなど)を使用できますか?

+0

他のプロジェクトでJREを上位バージョンに設定するのを忘れました。 – Gogoo

0

オートボクシングは、あなたが期待するところでは蹴っていないようです。最初の行を次のように変更すると、強制的に動作させることができます。

Float trg1 = 2.3f; // Notice uppercase Float 

どのようなJavaのバージョンを使用していますか? Java 5はfloatFloatにautoboxしてvarargsメソッド呼び出しに渡す必要があります。私の提案された修正がどちらもコンパイルされない場合、autoboxingを理解していない1.5より前のコンパイラを使っていることは間違いありません。

1

異なるコンパイラバージョンのようです。そのコードは1.6コンパイラで正しくコンパイルされます。 do何もないが、間違いなくコンパイルして実行する。

関連する問題