【问题标题】:Unexpected output in dividing two numbers [duplicate]除以两个数字时的意外输出[重复]
【发布时间】:2014-11-13 09:51:19
【问题描述】:

为什么这段代码会给出0.0 作为答案?

public static void main(String[] args) {
    float ans = (480/1080);
    System.out.println(ans);
}

【问题讨论】:

  • 您需要使用 (float) 进行投射。

标签: java


【解决方案1】:

你正在除两个整数,所以结果是整数。 480/1000

要将数字划分为浮点数,请转换其中一个:

float ans = ((float)480/1080);

【讨论】:

  • 或者只是float ans = 480f/1080; -- 将f 附加到数字文字后将其标记为浮点数。
【解决方案2】:

试试这个..这里两个数字都是浮点数,所以你会得到浮点值..

 float ans = ((float)480/(float)1080);
            System.out.println(ans);

输出:
0.44444445

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2013-02-02
    • 2012-04-07
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2020-07-20
    相关资源
    最近更新 更多