0
点赞
收藏
分享

微信扫一扫

跟我20天学Java:02-自动类型转换,表达式的自动类型转换,强制类型转换


文章目录

  • ​​学习目标​​
  • ​​一、什么是自动类型转换,为什么要学习自动类型转换?​​
  • ​​总结​​
  • ​​二、表达式的自动类型转换​​
  • ​​总结​​
  • ​​三、强制转化类型​​
  • ​​强制类型转换​​
  • ​​强制类型转换底层原理​​
  • ​​总结​​

学习目标

我们从项目管理工具开始学起来如果你们还想回顾Java等等相关内容欢迎关注上方专栏!!!

本文学习目标:

什么是自动类型转换,为什么要学习自动类型转换?

一、什么是自动类型转换,为什么要学习自动类型转换?

类型范围小的变量,可以直接赋值给类型范围大的变量。

跟我20天学Java:02-自动类型转换,表达式的自动类型转换,强制类型转换_开发语言

总结

为什么要进行类型转换?
存在不同类型的变量赋值给其他类型的变量
自动类型转换是什么样的?
类型范围小的变量,可以直接赋值给类型范围大的变量。

二、表达式的自动类型转换

在表达式中,小范围类型的变量会自动转换成当前较大范围的类型再运算。

跟我20天学Java:02-自动类型转换,表达式的自动类型转换,强制类型转换_开发语言_02

注意事项:
表达式的最终结果类型由表达式中的最高类型决定。
在表达式中,byte、short、char 是直接转换成int类型参与运算的。

总结

表达式的自动类型转换是什么样的?
小范围的类型会自动转换成大范围的类型运算。

表达式的最终结果类型是由谁决定的?
最终类型由表达式中的最高类型决定。

表达式的有哪些类型转换是需要注意的?
byte short char是直接转换成int类型参与运算的。

三、强制转化类型

场景

int a =  功能1();
功能2(byte b);

int a = 20;
byte b = a; //报错

问题:类型范围大的数据或者变量,不能直接赋值给类型范围小的变量,会报错。

强制类型转换

可以强行将类型范围大的变量、数据赋值给类型范围小的变量。

数据类型 变量2 = (数据类型)变量1、数据

int a = 20;
byte b = (byte)a;

强制类型转换底层原理

跟我20天学Java:02-自动类型转换,表达式的自动类型转换,强制类型转换_开发语言_03


注意事项

强制类型转换可能造成数据(丢失)溢出;

浮点型强转成整型,直接丢掉小数部分,保留整数部分返回。

总结

跟我20天学Java:02-自动类型转换,表达式的自动类型转换,强制类型转换_java_04


举报

相关推荐

0 条评论