按关键词阅读:

文章图片

文章图片

文章图片
【携程|Java基本数据类型之间的转换操作,是你必须要会的基础!】
java开发中经常需要定义一个变量 , 定义变量时我们需要指定变量的类型 ,
后面使用中也有可能需要将这个变量类型转换成另一个类型来使用 ,
这个时候就需要使用类型转换操作 。
由于java是强类型语言 , 也就是说定义这个变量是某个类型 , 那么它就是这个类型 ,
不能随便更改它的类型.如果你想改变它的类型的话 , 我们就需要进行类型的转换.
Java开发中类型转换分为自动类型转换和强制类型转换
提示:不包括boolean类型(因为boolean类型不能转成数字只有true和false值)
首先来看一下自动类型转换
自动类型转换也叫隐式类型转换
是指不需要书写代码来转换类型 , 由jvm (java 虚拟机)来自动帮助转换.
转换规则
从存储范围小的类型到存储范围大的类型 (可以理解成把字节小的给字节大的)
具体规则
byte\uD83E\uDC6Ashort(char)\uD83E\uDC6Aint\uD83E\uDC6Along\uD83E\uDC6Afloat\uD83E\uDC6Adouble
自动类型转换示例
示例结果
强制类型转换也叫显式类型转换
是指必须书写代码才能完成的转换.否则程序会报错
缺点:容易出现精度丢失
转换规则
从存储范围大的类型到存储范围小的类型 (可以理解成把字节大的给字节小的)
具体规则
double\uD83E\uDC6Afloat\uD83E\uDC6Along\uD83E\uDC6Aint\uD83E\uDC6Ashort(char)\uD83E\uDC6Abyte
语法格式
(转换到的类型)需要转换的值
强制类型转换示例
示例结果
转换操作中需要特别强调一下short类型和char类型之间的转换 , 由于这两个类型在计算机中所占的都是2个字节 , 所以他们之间的转换操作如何完成呢?如下图所示:
可以看到他们之间要完成转换操作都需要强制转换 , 这是因为而short是16位的带符号整数 , 存储范围是-32768-32767 , char是16位的无符号整数 , 存储范围是0-65535 , 所以 , 两者虽然字长相同 , 但意义却不一样(表示范围并不完全重合或包含) , 因此不管是char转换成short , 还是short转换成char , 都可能“丢失精度” , 因此必须强制转换 。

来源:(java爪哇帮)
【】网址:/a/2021/0210/kd699751.html
标题:携程|Java基本数据类型之间的转换操作,是你必须要会的基础!