文字列(フィルタ)が別の文字列(formattedAmount)に含まれているかどうかを確認しようとしています。NumberFormatを使用すると、Equals()とindexOf()が動作しない
私はそれを動作させることができませんでしたので、純粋にテストを単純化するために、 "indexOf()"ではなく "equals()"を使用するようにコードを変更しました。 equalsメソッドは、私が期待するように動作しているようには見えません。
import java.math.BigDecimal;
import java.text.NumberFormat;
import java.util.Locale;
public class utils
{
public utils()
{
}
public static void main(String[] args) throws Exception
{
String filter = "333 333,44";
Number amount = new BigDecimal(333333.44);
NumberFormat nf = NumberFormat.getNumberInstance(Locale.FRANCE);
nf.setMinimumFractionDigits(2);
String formattedAmount = nf.format(amount);
if (formattedAmount.equals(filter))
{
System.out.println("Working");
}
}
}
それはIfステートメントを入力されていない理由を任意のアイデア:ここ
は私がやろうとしています何を複製し、その私が書いたダミースクリプトですか?ありがとう
あなたは実際にformattedAmount変数を印刷して何を得るのを見たことがありますか? – Tudor
私はチューダーを持っています。それは333 333,44と思います。 –
@トーマス・バックリー:私が疑っていたように、4番目の文字は実際にはスペースではなく、何か他のものです。 – Tudor