类型转换

类型转换
》自动类型转换 (自动类型提升)
int num4 = 4;
double num5 = num4;
-----------------
int num6 = 6;
double num7 = 3.0;
double num8 = num6 / num7;

》小范围的数据往大范围的数据转换时,可以自动转换,还需要保证类型兼容(数值类型:整型和浮点型,互相兼容)
》如果一个表达式中有一个操作数是double,那么整个结果都将提升为double

》强制类型转换
》当大范围转向小范围时,比如浮点型转换为整型时
double num4 = 4.0;
int num5 = (int)num4;
》+=具有强制类型转换效果
num += 10;

byte num2 =126+4; //编译失败,两常量相加,判断相加后结果是否在byte范围内
byte num3 =126;num3+=4; //编译正确但运行结果有问题

》整型 byte short char
》这三种数据类型在进行各种计算时,结果都会变成一个int值
byte b1 = 1;
int b2 = b1 + b1;
--------------
char c1 = 'a';
int c2 = c1 + 1;
》除非它们自加自减
byte b3 = b1 ++;
》char->int:根据ascii码表进行提升
char ch = 'a';
int num2 = ch;
System.out.println(num2);//97

a:97 A:65
》short->int

short num1 = 19; num1 = num1 + 10; //编译失败,因为short+int,最终结果为int型,不能赋给short型的num1

 



__EOF__

本文作者龙陌
本文链接https://www.cnblogs.com/longmo666/p/13554770.html
关于博主:评论和私信会在第一时间回复。或者直接私信我。
版权声明:本博客所有文章除特别声明外,均采用 BY-NC-SA 许可协议。转载请注明出处!
声援博主:如果您觉得文章对您有帮助,可以点击文章右下角推荐一下。您的鼓励是博主的最大动力!
posted @   龙陌  阅读(115)  评论(0编辑  收藏  举报
编辑推荐:
· 深入理解 Mybatis 分库分表执行原理
· 如何打造一个高并发系统?
· .NET Core GC压缩(compact_phase)底层原理浅谈
· 现代计算机视觉入门之:什么是图片特征编码
· .NET 9 new features-C#13新的锁类型和语义
阅读排行:
· Sdcb Chats 技术博客:数据库 ID 选型的曲折之路 - 从 Guid 到自增 ID,再到
· 语音处理 开源项目 EchoSharp
· 《HelloGitHub》第 106 期
· Spring AI + Ollama 实现 deepseek-r1 的API服务和调用
· 使用 Dify + LLM 构建精确任务处理应用
点击右上角即可分享
微信分享提示