天天看点

java常见面试考点(四十一):short运算小错误java常见面试考点一、short s1 = 1; s1 = s1 + 1; 有错吗?short s1 = 1; s1 += 1;有错吗?

java常见面试考点

往期文章推荐:

  java常见面试考点(三十六):CountDownLatch和CyclicBarrier的区别

  java常见面试考点(三十七):面向对象的三大特性

  java常见面试考点(三十八):hashcode与equals

  java常见面试考点(三十九):Math.round()方法

  java常见面试考点(四十):try-catch-finally

【版权申明】未经博主同意,谢绝转载!(请尊重原创,博主保留追究权);

本博客的内容来自于:java常见面试考点(四十一):short运算小错误;

学习、合作与交流联系q384660495;

本博客的内容仅供学习与参考,并非营利;

文章目录

  • java常见面试考点
  • 一、short s1 = 1; s1 = s1 + 1; 有错吗?short s1 = 1; s1 += 1;有错吗?

一、short s1 = 1; s1 = s1 + 1; 有错吗?short s1 = 1; s1 += 1;有错吗?

前者不正确,后者正确。对于short s1 = 1; s1 = s1 + 1;由于1是int类型,因此s1+1运算的结果也是int类型,需要强制类型转换后才可以赋值给short型。而short s1 = 1; s1 += 1;可以正确编译,因为s1 += 1;相当于s1 = (short)(s1 + 1),里面已经包含了强制类型转换。