short运算关于"="与"+=";
来源:互联网 发布:淘宝扬琴 编辑:程序博客网 时间:2024/06/15 03:41
问题:以下二种运算方式一样么?
short s1 = 1; s1 = s1+1;
short s2 = 1; s2 += 1;
s1+1中的1 为int型 而int型高于short型,所以系统会做一次默认的隐式类型转换int 即s1+1为int型,把一个int赋值给short 当然有错 需要强制类型转换
而s2 += 1,实际上就是 short s2=1 实际上等价于 : s2=(short)( s2+1 ),.这种类型转换或者是一个恒等转换,或者是一个窄化转换.这个说明Java是一种强类型的语言,对数据类型的要求是非常严格的,否则会引起混乱.
下面解释一下三种类型转换:
恒等转换(相同容量的两个数据类型之间的赋值);
拓宽转换(小容量类型赋值给大容量类型);
窄化转换(大容量赋值给小容量类型).
实际上,前两种转换都是编译程序自动执行的,而窄化转换则要求必须显式的执行.
0 0
- short运算关于"="与"+=";
- short运算关于"="与"+=";
- 关于short i = 65535和short i = 65536输出问题
- short s1 = 1; s1 = s1 + 1;与short s1 = 1;
- codeforces C—Short Program 与或异或运算
- s1 = (short) (s1 + 1) 与s2 += 1
- [转]关于short s=1; s=s+1; 和short s=1; s+=1;
- byte、char、short运算
- 关于+=和++运算
- short s1 = 1; s1 = s1 + 1L;与short s1 = 1; s1 += 1L;
- 经典题目short s=1;s=s+1;与short s=1;s+=1;的区别
- 经典题目short s=1;s=s+1;与short s=1;s+=1;的区别
- short i =1; i=i+1与short i=1; i+=1的区别
- short s=1;s=s+1;与 short s=1;s+=1; 误区
- int(Integer) 与 short(Short)
- 25、short s1 = 1; s1 = s1 + 1;有什么错? short s1 = 1; s1 += 1;有什么错? short s1 = 1; s1 = s1 + 1; (s1+1运算结果
- short s1 = 1; s1 = s1 + 1;有什么错? short s1 = 1; s1 += 1;有什么错? 对于short s1 = 1; s1 = s1 + 1;由于s1+1运算时会自动
- dspic sizeof(short)=2
- input复选框是否选中
- 解决nginx的An error occurred. The page you are looking for is temporarily unavailable错误办法
- android调取系统相册和照相机选取图片
- Hibernate 使用原生SQL和实体之间的关联
- bzoj 1937: [Shoi2004]Mst 最小生成树
- short运算关于"="与"+=";
- 关于visual stdio 2008下编译程序汉语乱码及英文全角的问题解决方法
- 那些被误会的常识
- AndroidStudio-加载so文件与jar包(可能是最完美的解决方法)
- android_第三方插件的使用
- 协方差矩阵 阵列处理基础
- 。。。。
- [开源] Android 代码高亮显示控件
- tableview和cell高度自适应