質問

I'm trying to output a really simple value, but what I obtain is really weird:

Log.d("try", "distanceWithMaxSpeed > " + ((90 * (1000 / 3600)) * ((3000 - 2000)/1000)) );

I get 0 instead of 25! Where am I wrong?

役に立ちましたか?

解決

Integer Division

1000/3600 = 0

You should change them to floats (90f) or doubles (90.0)

他のヒント

You're doing integer division. If the numerator is less than the divisor, then at least one of the operands should be a double:

Log.d("try", "distanceWithMaxSpeed > " + ((90 * (1000.0 / 3600)) * ((3000 - 2000)/1000)) );
                                                     ^^
ライセンス: CC-BY-SA帰属
所属していません StackOverflow
scroll top