2017-03-09 9 views
1

Iは単位変換アプリケーションを開発し、別の指数値のために適切な書式設定小数点以下を行う必要がありいます。アンドロイド小数点フォーマットは、どのように異なるの指数値に基づいて、小数のフォーマットを作るには?

  1. 答えがある場合は1E-6の答えは0.000001
  2. 答えは2.1345e3答えであれば2134.5
  3. 答えは2.13456e-9であれば答えは2.13456e-9
  4. とどまるべきものとする必要がありますと仮定しなければなりませんと仮定
  5. 答えが1987.345e-3なら答えは1.98734e-6

私はiPhoneとAndroid小数フォーマットの画像を添付しています。 ios and android number formatting

ios and android number formatting

あなたは、Androidのフォーマットで見ることができるようにすべての値に対して同じであるが、私は別の値に異なる書式設定が必要です。

より多くの情報が必要な場合は私に知らせてください。以下のアンドロイドにフォーマットするための私のコードで、すべての値は、二重のみです。

DecimalFormat df = new DecimalFormat("######.#####E+0"); 
String answer = df.format(value); 
return answer; 

おかげで、あなたは異なるサイズの異なるフォーマットをしたいと

答えて

0

あなたは異なる領域に連続体を分割し、そのフォーマットに各領域を一致させることができます。例えば、(私はパターンがどんな意味をなすかどうかわからないけど、アイデアは十分に簡単です):

public String myFormat(double value) { 
    String pattern; 

    if (value > 1) { 
     pattern = "######.#E+0"; 
    } else if (value > 0.01) { 
     pattern = "#.#####E+3"; 
    } else { 
     pattern = "######.#####E+0"; 
    } 

    return new DecimalFormat(pattern).format(value); 
} 
関連する問題