首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

Java基本数据类型之间的转换操作,你必须会的基础!

java开发中经常需要定义一个变量,定义变量时我们需要指定变量的类型,

后面使用中也有可能需要将这个变量类型转换成另一个类型来使用,

这个时候就需要使用类型转换操作。

由于java是强类型语言,也就是说定义这个变量是某个类型,那么它就是这个类型,

不能随便更改它的类型.如果你想改变它的类型的话,我们就需要进行类型的转换.

Java开发中类型转换分为自动类型转换和强制类型转换

提示:不包括boolean类型(因为boolean类型不能转成数字,只有true和false值)

首先来看一下自动类型转换,也叫隐式类型转换

是指不需要书写代码来转换类型,由jvm (java 虚拟机)来自动帮助转换.

转换规则:

从存储范围小的类型到存储范围大的类型  (可以理解成把字节小的给字节大的)

具体规则:  (字节大小)

byte->short(char)->int->long->float->double

自动类型转换示例:

示例结果:

强制类型转换

也叫显式类型转换

是指必须书写代码才能完成的转换.否则程序会报错

缺点:容易出现精度丢失

转换规则:

从存储范围大的类型到存储范围小的类型  (可以理解成把字节大的给字节小的)

具体规则:

double->float->long->int->short(char)->byte

语法格式:

(转换到的类型)需要转换的值

强制类型转换示例:

示例结果:

转换操作中需要特别强调一下short类型和char类型之间的转换,由于这两个类型在计算机中所占的都是2个字节,所以他们之间的转换操作如何完成呢?如下示例所示:

可以看到他们之间要完成转换操作都需要强制转换,这是因为而short是16位的带符号整数,存储范围是-32768-32767,char是16位的无符号整数,存储范围是0-65535,所以,两者虽然字长相同,但意义却不一样(表示范围并不完全重合或包含),因此不管是char转换成short,还是short转换成char,都可能“丢失精度”,因此必须强制转换。

  • 发表于:
  • 原文链接https://kuaibao.qq.com/s/20210209A07LZ200?refer=cp_1026
  • 腾讯「腾讯云开发者社区」是腾讯内容开放平台帐号(企鹅号)传播渠道之一,根据《腾讯内容开放平台服务协议》转载发布内容。
  • 如有侵权,请联系 cloudcommunity@tencent.com 删除。

扫码

添加站长 进交流群

领取专属 10元无门槛券

私享最新 技术干货

扫码加入开发者社群
领券