问题:
E:\java\zuoye>javac Assignl2.java
Assignl2.java:9: 可能损失精度
找到: double
需要: float
                float res=a/b;
                           ^
1 错误
源代码如下:
int d=100;
int e=3;
int res1=d/e;
System.out.println("res1="+res1);

解决方案 »

  1.   

    //我怀疑楼主的出错时源代码是这样
    double d=100;
    double e=3;
    float res1=d/e;
    System.out.println("res1="+res1);
    //但是提问题时,改正确之后才发帖
      

  2.   

    float res=(float)a/b; //have a try
      

  3.   

    d和e的类型可以不改,只把res改成float就行了
      

  4.   

    1L 2L 正解,补充一点。
    整数类型默认int  long num=200000L;
    浮点类型默认为double float num=3.14F;
    如果没有这个F,那么double num=3.14和 float num=3.14 效果一样:都是double类型。
    所以d/e 是double类型。double转float 是显示转换。所以要强转。