0

只是想知道

float percent = 1 + (25/100); // percent value is 1.0 and not 1.25

结果给出 1 但不是 1.25

谢谢赛卡特

4

2 回答 2

2

你正在做一个整数除法。让编译器知道您正在尝试通过明确地将您的操作数之一设为浮点文字来进行浮点除法。您可以通过将 F 或 f 附加到数字或将 .0 附加到数字来制作浮点文字。

25---> int literal
25.0---> float literal
25F----> float literal
25f----> float literal

float percent = 1 + (25F/100)
于 2013-03-21T10:38:38.570 回答
2

我认为这是因为 Java 是这样看待它的:

(int) 1 + ( (int)25/ (int)100) = (int) 1

然后它被存储到一个浮点数中。尝试使用25.0而不是25.

于 2013-03-21T10:39:21.180 回答