は、数学のabitから始めることができます。アンドロイドは、ユーザー提供の入力から不正な減算を受け取ります。
ターゲット重み= 8.4 電流量= 9.1 電流量 - 目標量= 0.7(あなたがそう思うだろう)
if(obj != null && obj.targetWeight != null && obj.currentWeight != null) {
try {
double i = Double.parseDouble(obj.targetWeight);
double o = Double.parseDouble(obj.currentWeight);
//do something if target weight is a number
if(i>o){
outputEditText.setText ("Congratulations. you have passed your target weight");
}
else if (i<o){
outputEditText.setText(
"Your Target Weight is " + obj.targetWeight +obj.unit + "\n" +
"Your Current Weight is " + obj.currentWeight + "\n" +
"Difference is " + (o - i));
}
両方目標= 0.6999999999999993
上記8.4から9.1に従います現在の重みはユーザーが入力したもので、2重として解析されます。
誰も私が間違って
をやっているあなたは何も悪いことをやっていない多くのおかげ
ol。私はちょうど浮動小数点arithmaticに関する記事を見つけました。ダムはばかです。回避策はありますか?これは、アプリケーションの機能を持っている必要があります –
@ TuffyG x桁の答えを四捨五入してユーザーフレンドリーな表現にすることができます。 – Jave
すべての浮動小数点計算に絶対精度を持たなければならず、大きなパフォーマンスヒットが気にならない場合は、常に十進数を正確に表すことができる 'BigDecimal'クラスを使用することができます。しかし、通常、丸め/書式設定は十分です。 –