错误的' double'分开两个' int'数

时间:2016-01-04 11:37:58

标签: java int double

我是Java新手,正在尝试学习int和double的基本概念。有人能告诉我,当我运行该程序时,为什么0.0打印出来而不是0.3333333?

    int i = 1;
    int j = 3;
    double k = i / j;
    System.out.println(k);

3 个答案:

答案 0 :(得分:3)

因为你正在进行整数除法,它会将结果截断为整数。

您需要将其中任何一个转换为双倍。

double k = i / (double)j;

答案 1 :(得分:2)

更改

double k = i / j;

double k = (double)i / (double)j;

在分割之前,您需要强制其中一个操作数到double

答案 2 :(得分:2)

你不能分割两个整数并期望加倍。

将它们声明为double s以开始或投射它们。

double k = (double)i / (double)j
//or
double i = 1;
double j = 3;
double k = i / j;