今天爱分享给大家带来short s1 = 1; s1 = s1 + 1;有什么错? short s1 = 1; s1 += 1;有什么错?【面试题详解】,希望能够帮助到大家。
对于 short s1 = 1; s1 = s1 + 1; 由于 s1+1 运算时会自动提升表达式的类型,所以结
果是 int 型,再赋值给 short 类型 s1 时,编译器会提示错误,需要强制转换类型。
对于 short s1 = 1; s1 += 1;由于 += 是 java 语言规定的运算符,Java 编译器会对它
进行特殊处理,因此可以正确编译。
【分析】
主要考查几种基本数据类型在运算时的,由低到高会自动转换,而由高到低时会强制转
换。