我刚开始学习Java,使用麻省理工学院开放式课程。我写的第一个程序只是一个非常小的计算,但它打印出一些意想不到的东西。 所以这是我的代码:
public class test
{
public static void main (String[] args)
{
int s = 120;
int g = 12;
double fraction = g/s;
System.out.println ("Fraction: " + fraction);
}
}
我期待这个输出:
Fraction: 0.1
但我得到了这个输出:
Fraction: 0.0
如果有人能解释我的输出,我将非常感激。
答案 0 :(得分:0)
将您的变量更改为double
而不是int
,您将从分部获得更好的结果:
double s = 120.0;
double g = 12.0;
一般情况下,请记住,在 Java 等类型语言中,键入内容。 int
不会神奇地为您提供non-int
或double
个结果。这就是为什么有两种不同的类型......