1

私はJavaで2つの数値を除算しようとしています。具体的には、分数800/9177があり、それをdoubleまたはfloatまたはw/eに変換したいと考えています。私の問題は、分数の値を取得しようとすると、0を取得することです。

誰かがこれを行う方法を知っていますか?

私のコード:

double dt = 800/9177;
float ft = 800/9177;
double dw = 800/122;
System.out.println("dt : " + dt + " ft: " + ft + " dw " + dw + " 800/9177 " + (800/9177));

dt:0 ft:0 dw:6.0 800/9177 0を出力するので、dwを除くすべての分数は0です。

4

3 に答える 3

3

最も単純なのは

double dt = 800.0/9177;

また

double dt = (double) 800 / 9177;
于 2013-03-09T22:04:03.190 に答える
0

データ型intを使用すると、データintが失われます。このように最初から使用doubleとデータ型float

double dt = 800/9177.0;
float ft = 800/9177.0f;
double dw = 800/122.0;

倍数rはこのように指定できます

double d = (double) 123;
double d = 123.0; //default floating point type is double. use f for float 
double d = 123d;
于 2013-03-09T22:04:19.917 に答える
0
double dt = 800D / 9177;

2つのintを除算すると、整数除算が得られます。二重除算を取得するには、オペランドの1つがdoubleである必要があります。

于 2013-03-09T22:04:32.710 に答える