我们会通过隐式转换来放松精度

Hui*_*ang 2 java implicit implicit-conversion

Java中有一个问题是我兄弟:

通过隐式转换原始数据类型,您可能会丢失精度并获得不正确的结果.

A,B,False

答案的关键是答:是的

我认为既不会失去精确度也不会得到不正确的结果.我知道显式转换可能会失去精度并得到不正确的结果,但不是隐式转换.

例如:

int i = 9;

short s = 3;

i = s; // implicit conversion, neither loose 
      //precision nor incorrect results

s = i; // compile error, do we call this implicit conversion? 
       //if yes, then the answer to question 3 is True, 
       //but I don't think this is an implicit conversion, 
       //so I think answer is false.   
Run Code Online (Sandbox Code Playgroud)

作为注释中的州:

隐式类型转换:程序员不会尝试转换类型,而是在某些情况下系统会自动转换类型.

有人可以建议吗?

非常感谢.

Evg*_*eev 6

答案= A.

    float f = Long.MAX_VALUE;
    System.out.println(Long.MAX_VALUE);
    System.out.printf("%.0f", f);
Run Code Online (Sandbox Code Playgroud)

产量

9223372036854775807
9223372036854776000
Run Code Online (Sandbox Code Playgroud)