double a = 7/4;
System.out.println(a);为什么打印结果是1.0??

解决方案 »

  1.   

    分两步看:
    7为整型,4为整型,7/4为整型运算。
    得出结果为1
    double a, a为实型
    a = 7/4 即 a=1
    实型的数据a打印为:1.0
      

  2.   


    double a = 7/4; 
    System.out.println(a); 上面代码中7和4都是整数,因此7/4将会得到1。而a有事double类型,因此1就变成了1.0,故最后结果是a=1.0.如果将上面代码中的
    double a = 7/4; 
    改为
    double a = 7.0/4.0; 
    那么结果就会是a=1.75了。
      

  3.   

    double 类型是小数的
    7/4取整 1
      

  4.   

    有点不懂:double类型为什么不是1.0000000??
      

  5.   

    7/4int和int的运算结果为int
    想得到double改成7.0/4或者7/4.0咯
      

  6.   

    double 属浮点型 数据类型,
      

  7.   

    int 7 除以 int 4 肯定是 int 1  数据也没有强转 就是string a = 7/4  它也出不来你要的数据啊!先对7和4强转成double类型就等到想要的数据结果了 ………… 
      

  8.   

    double a = 7/4;
    System.out.println(a);
    应该这样理解,a赋值是double型变量,但是a的值是整型值,7是整型,4也是整型,整型整型运算后最后得数还是整型,只不过最后打印双精度数据,所以成了1.0
    你可以改成这样
    double a = 7.0/4;
    System.out.println(a);
    双精度和整型运算,整型自动转换成双精度。
    打印出来就是1.75了。
    这题想讨论的应该是数据类型的转换,由大到小,由小到大。