short float double

来源:互联网 发布:成杰老师的学而知不足 编辑:程序博客网 时间:2024/05/19 00:41
public void test() {// error// short s1 = 1; // s1 = s1 + 1; short s1 = 1;  s1 += 1; System.out.println(s1);}

对于short s1 = 1; s1 = s1 + 1;由于s1+1运算时会自动提升表达式的类型,所以结果是int型,再赋值给short类型s1时,编译器将报告需要强制转换类型的错误。

对于short s1 = 1; s1 += 1;由于 +=java语言规定的运算符,java编译器会对它进行特殊处理,因此可以正确编译。


public void test() {double d = 1.85;// errorfloat f = 2.8;// rightfloat f2 = 2.8f;}


原创粉丝点击