当前位置: 技术问答>java相关
关于赋值的问题,来者有分!!!!!!!!!
来源: 互联网 发布时间:2015-05-31
本文导语: Which three are valid declarations of a float? (Choose Three) A. float foo = -1; B. float foo = 1.0; C. float foo = 42e1; D. float foo = 2.02f; E. float foo = 3.03d; F. float foo = 0x0123; the answer is a,d,f 为什么b,c不对呢? ...
Which three are valid declarations of a float? (Choose Three)
A. float foo = -1;
B. float foo = 1.0;
C. float foo = 42e1;
D. float foo = 2.02f;
E. float foo = 3.03d;
F. float foo = 0x0123;
the answer is a,d,f
为什么b,c不对呢?
A. float foo = -1;
B. float foo = 1.0;
C. float foo = 42e1;
D. float foo = 2.02f;
E. float foo = 3.03d;
F. float foo = 0x0123;
the answer is a,d,f
为什么b,c不对呢?
|
float foo = 1.0;
float foo = 42e1;
对于含有小数点的数和指数,编译器通常作为double来处理,所以认为丢失精度。
甚至 1. 也不行。
float foo = 42e1;
对于含有小数点的数和指数,编译器通常作为double来处理,所以认为丢失精度。
甚至 1. 也不行。
|
A. float foo = -1;
B. float foo = (float)1.0;
C. float foo = (float)42e1;
D. float foo = 2.02f;
E. float foo = (float)3.03d;
F. float foo = 0x0123;
前面的已经说对了,只要强制类型转换就可以了,因为float默认用double来处理
B. float foo = (float)1.0;
C. float foo = (float)42e1;
D. float foo = 2.02f;
E. float foo = (float)3.03d;
F. float foo = 0x0123;
前面的已经说对了,只要强制类型转换就可以了,因为float默认用double来处理
|
-1 int
1.0 double
42e1 double
2.02f float
3.03d double
0x0123 int
float好像总是那么麻烦
1.0 double
42e1 double
2.02f float
3.03d double
0x0123 int
float好像总是那么麻烦
|
对于含有小数点的数和指数,编译器通常作为double来处理, double 赋值给float时需要强制类型转换。
|
int可以赋值给float
byte--short-char--int--long--float--double
byte--short-char--int--long--float--double
|
1.0 是 double 型 b 可改为float foo=1.0f;
c 中42e1同样会被认成 double c可改为float foo=42e1f;
c 中42e1同样会被认成 double c可改为float foo=42e1f;