Java 类型转换

本文介绍了Java中的自动类型转换和强制类型转换。自动类型转换在变量范围变小时自动进行,表达式中的小范围类型会提升为高范围类型进行运算。强制类型转换则需要显式进行,但可能导致数据丢失或溢出,如浮点转整数会丢弃小数部分。注意在表达式中,byte, short, char会先转换为int再参与运算。
摘要由CSDN通过智能技术生成

Java 类型转换

1. 自动类型转换

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

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

    • 自动类型转换的其他形式

在这里插入图片描述

2.表达式的自动类型转换

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

    在这里插入图片描述

注意事项

  • 表达式的最终结果类型由表达式中的最高类型决定
  • 在表达式中,byte,short,char是直接转换成int类型参与运算的

总结

  1. 表达式的自动类型转换是什么样的?
    • 小范围的类型会自动转换成大范围的类型运算
  2. 表达式的最终结果类型是由谁决定的?
    • 最终类型由表达式中的最高类型决定
  3. 表达式的那些类型转化是需要注意的?
    • byte,short,char是直接转换成int类型参与运算的。

3. 强制类型转换

问题

  • 类型范围大的数据或者变量,不能直接复制给类型范围小的变量,会报错

强制类型转换

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

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

    int number = 23;
    byte bt = (byte)number;
    

注意事项

  • 强制类型转换可能造成数据(丢失)溢出
  • 浮点型强转整型,直接丢掉小数部分,保留整数部分返回
double score = 99.5;
int it = (int)score;
System.out.println(it);   //输出99;强转之后直接丢掉小数部分

4.总结

  1. 什么是强制类型转换
    • 可以强行将类型范围大的数据,赋值给类型范围小的变量
    • 数据类型 变量2 = (数据类型)变量1、数据

​ 2.强制类型转换有哪些需要注意的?

  • 可能出现数据丢失
  • 小数强制转换成整数是直接截断小数保留整数。
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值