本帖最后由 test_lockxxx 于 2012-06-09 18:16:25 编辑

解决方案 »

  1.   

    double m = 12345;
    int n = (int)m;
    System.out.println(m==n ? n : m);

    if(m==n)
    {
    System.out.println(n);
    }
    else
    {
    System.out.println(m);
    }
      

  2.   

    m==n ? n : m
    先判断m==n,需要将m和n的类型变成一样,所以n的类型转化为double,因为m==n为true,所以结果为n,因为是double型,所以输出12345.0
      

  3.   

    不同基本类型比较时,JVM会进行向上自动转型,如2楼所说~