Java では、102%100 を実行し、残りを 2 ではなく 02 として取得したいと考えています。どうすればよいですか?
int a = (102%100);
a は 02 ではなく 2 を返します.. 02 を取得したい.. もともとは 1.02 であるはずですが、mod は 2 を返します. :( 誰かそれを行う方法を知っていますか?
2
と02
は同じ数です。
これを使用して小数点以下の最初の 2 つの数字を見つけるため、1 桁の数字に0
. 小数点以下のすべての数値が必要な場合、より一般的な方法は次のとおりです。
//Strip all numbers before decimal-point
double decimalDigits = myNumber - (int)myNumber;
NumberFormatがおそらく最良の方法です。String.format と計算も機能しますが、数値をフォーマットしているため、数値フォーマッターを使用することもできます。
例。ここであなたの要件を少し推測しています (たとえば、110%100 は何を返す必要がありますか、それとも 1 桁の剰余しか期待しませんか?):
NumberFormat formatter = new DecimalFormat("'0'#");
int remainder = 102%100;
System.out.println(formatter.format(remainder));
整数として、それらは同じ数を表します。以下を使用して、数値を表示用の文字列としてフォーマットします。
int a = 102 / 100;
int r = 102 % 100;
System.out.print(a + "." + String.format("%02d", r));
出力:
1.02
ここに数字をゼロで埋めることへの答えがあります: Javaで数字に先行ゼロを追加しますか?
本当に、それだけです。