数据类型转换
数据类型转换
.java程序中要求参与的计算的数据 必须要保证数据类型的一致性 如果数据类型不一致将发生类型的转换
自动类型转换
把一个类型取值范围小的数值直接赋给另一个取值范围大的数据类型变量时,系统就会进行自动类型转换
一个int类型变量和一个byte类型变量进行加法运算
int i=1; byte b=2;
运算结果 变量的类型将是int类型 这是出现了数据类型的自动类型转换现象
自动类型转换就好比将小瓶水倒入到大瓶的换装过程。我们将小瓶水倒入到大瓶中时,由于小瓶的容量比大瓶的容量小,所以倒入的水永远不可能溢出大瓶
int i=1; byte b=2; int c=i+b; System.out.println(c);
byte --> int 符合从小到大的规则,也发生了自动类型转换
强制类型转换
目标类型取值范围小于源类形时,自动类型转换无法进行,这是就需要强制类型转换
例子:强制类型转换就好比将大瓶水倒入到小瓶中一样,如果大瓶中的水的容量小于小瓶的大小,那么水是可以完全倒入的;否则多出来的水就会溢出。所以系统默认不支持这种行为,只能由开发者自己决定是否进行强制类型转换
特点:代码需要进行特殊的格式处理,不能自动完成
格式:范围小的类型 范围小的变量名 = (范围小的类型) 原本范围大的类型
int i=1; long b=2; int c= (int) (i+b); System.out.println(c);
long-->int 不是从小到大 不能发生自动类转型 只能进行强转
数据类型转换注意事项
1.强转类型转换一般不推荐使用,因为有可能发生精度损失 数据流出
2.byte/short/char这三种类型都可以发生数字运算 例如加法
3.byte/short/char这三种类型在运算的时候 都会被首先提高成为int类型 然后再计算
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· 被坑几百块钱后,我竟然真的恢复了删除的微信聊天记录!
· 【自荐】一款简洁、开源的在线白板工具 Drawnix
· 没有Manus邀请码?试试免邀请码的MGX或者开源的OpenManus吧
· 园子的第一款AI主题卫衣上架——"HELLO! HOW CAN I ASSIST YOU TODAY
· 无需6万激活码!GitHub神秘组织3小时极速复刻Manus,手把手教你使用OpenManus搭建本