当前位置:网站首页>short i =1; i=i+1与short i=1; i+=1的区别
short i =1; i=i+1与short i=1; i+=1的区别
2022-07-06 11:23:00 【qq_37705525】
short i =1; i=i+1与short i=1; i+=1的区别
很典型的一到JAVA 基础面试题,上次面试遇到的,现在记录一下。
short i =1; i=i+1;
short i=1;i+=1;
这两有什么区别呢 ?
对两个容量不一样的数据类型的变量进行算术运算时,java会自动将小容量的变量进行精度提升,然后再进行运算,得到的结果类型是提升后的大容量的数据类型.如果将该结果赋值给小容量的数据类型的变量,则必须进行强制的类型转换,否则编译程序会报损失精度错.如楼主示例,用i来表示1:
short s1 = 1;
int i = 1;
首先,因为short类型是16位的,而int类型是32位的,在进行
(s1+i) 运算时,自动将s1提升到32位,然后与i相加,得到的结果是32位的,而此时
s1=s1+i; 必然报错,因为如果赋值成功,只是把低16位赋给了s1,这个虽然正是楼主想要的结果,但是编译程序却不能判定你的意图是什么.
执行强转:
s1=(short)(s1+i); 就没问题了.
s1+=i;能编译通过并得到正确结果,而 s1=s1+i; 却报错,是因为它们并不是等价的,s1+=i的方式java会对i进行窄化转换,由编译程序自动执行.
边栏推荐
- R语言ggplot2可视化:使用ggpubr包的ggstripchart函数可视化分组点状条带图(dot strip plot)、设置add参数为不同水平点状条带图添加箱图
- Reptiles have a good time. Are you full? These three bottom lines must not be touched!
- 根据PPG估算血压利用频谱谱-时间深度神经网络【翻】
- 一种用于夜间和无袖测量血压手臂可穿戴设备【翻译】
- Online notes
- How word displays modification traces
- 第五期个人能力认证考核通过名单公布
- 抽象类与抽象方法
- 应用使用Druid连接池经常性断链问题分析
- On AAE
猜你喜欢
裕太微冲刺科创板:拟募资13亿 华为与小米基金是股东
Actf 2022 came to a successful conclusion, and 0ops team won the second consecutive championship!!
五金机电行业智能供应链管理系统解决方案:数智化供应链为传统产业“造新血”
Mathematics in machine learning -- common probability distribution (XIII): Logistic Distribution
Synchronous development of business and application: strategic suggestions for application modernization
五金机电行业供应商智慧管理平台解决方案:优化供应链管理,带动企业业绩增长
Php+redis realizes the function of canceling orders over time
快速幂模板求逆元,逆元的作用以及例题【第20届上海大学程序设计联赛夏季赛】排列计数
应用使用Druid连接池经常性断链问题分析
Master Xuan joined hands with sunflower to remotely control enabling cloud rendering and GPU computing services
随机推荐
Graffiti intelligence is listed on the dual main board in Hong Kong: market value of 11.2 billion Hong Kong, with an annual revenue of 300 million US dollars
Implementation of AVL tree
ROS自定义消息发布订阅示例
2022.2.12
三年Android开发,2022疫情期间八家大厂的Android面试经历和真题整理
Interface test tool - postman
Human bone point detection: top-down (part of the theory)
Take a look at how cabloyjs workflow engine implements activiti boundary events
Meilu biological IPO was terminated: the annual revenue was 385million, and Chen Lin was the actual controller
Yutai micro rushes to the scientific innovation board: Huawei and Xiaomi fund are shareholders to raise 1.3 billion
AcWing 3537.树查找 完全二叉树
helm部署etcd集群
朗坤智慧冲刺科创板:年营收4亿 拟募资7亿
R语言ggplot2可视化:使用ggpubr包的ggdotplot函数可视化点阵图(dot plot)、设置palette参数设置不同水平点阵图数据点和箱图的颜色
深度循环网络长期血压预测【翻译】
Simple understanding of MySQL database
Benefit a lot, Android interview questions
Master Xuan joined hands with sunflower to remotely control enabling cloud rendering and GPU computing services
三面蚂蚁金服成功拿到offer,Android开发社招面试经验
Summary of performance knowledge points