Java中数值的默认类型问题···
byte a=12;
12默认是int型 为什么这不报错?
float b=12.32
12.32默认是double 型 所以报错
俺是新手 忘达人指教~自动转型是从低到高的啊
byte->short->int->long->float->double
char->int->long->float->double
默认是int 怎么转化为byte的,为什么不报错?
[解决办法]
12是int类型,但是java里面能进行默认的转换。
如 byte b = 12;(能编译)
你写成 int a = b + 5;就会编译出错,2边类型不同。
12.32 是double,但是java里默认的许可是double。当你申明float类型时,要写成12.32f。你申明double类型的时候,就不用写成 12.32d也是正确的。
可能表述不是很清楚,供参考
[解决办法]