java基本数据类型之间的转换
2020-03-24 16:28:06来源:博客园 阅读 ()
java基本数据类型之间的转换
基本数据类型之间的相互转换分为两种,分别是自动类型转换和强制类型转换。
自动类型转换
当需要从低级类型向高级类型转换时,java会自动完成从低级类型向高级类型转换。低级类型是指取值范围相对较小的数据类型,高级类型是指取值范围相对较大的数据类型,如long相对于float是低级数据类型,但是相对于int类型是高级数据类型。在基本数据类型中除boolean外均可参与算数运算。
数据类型从低到高的排序:
graph LR A[byte] --> B[short] B[short] --> C[char] C[char] --> D[int] D[int] --> E[long] E[long] --> F[float] F[float] --> G[double]- 在算数表达式中含有int、long、float、double型的数据
如果在算数表达式中含有int、long、float、double型的数据,java首先会将所有数据类型相对较低的变量自动转换为表达式中数据类型最高的数据类型,然后再计算,并且计算结果的数据类型也为表达式中数据类型相对最高的数据类型。
例如:
byte b=75;
char c='c';
int i=123;
long l=12345L;
long result=b*c-i+l;
- 在算数表达式中只含有byte、short、char型的数据
如果在算数表达式中只含有byte、short、char型的数据,java首先将所有变量的类型自动转换成int型,然后在进行计算,并且计算结果的数据类型也为int型。byte、short、char三者之间不能直接相互转换。
byte b=75;
char c='c';
int result=b+c;
强制类型转换
如果需要把数据类型相对较高的数据或变量赋值给数据类型相对较低的变量,就必须进行强制类型转换。
例如:
int a=(int)7.5;
//a的最终结果为7
byte b=(byte)774;
//b的最终结果6
变量b的值为6,原因是整数774超出了byte型的取值范围,在进行强制类型转换时,表示整数774的二进制数的前24位被舍弃,所有最终赋值为变量b的数据是后8位的二进制数。
原文链接:https://www.cnblogs.com/lxy0/p/12561725.html
如有疑问请与原作者联系
标签:
版权申明:本站文章部分自网络,如有侵权,请联系:west999com@outlook.com
特别注意:本站所有转载文章言论不代表本站观点,本站所提供的摄影照片,插画,设计作品,如需使用,请与原作者联系,版权归原作者所有
上一篇:通用计价的简单代码实现
- 国外程序员整理的Java资源大全(全部是干货) 2020-06-12
- 2020年深圳中国平安各部门Java中级面试真题合集(附答案) 2020-06-11
- 2020年java就业前景 2020-06-11
- 04.Java基础语法 2020-06-11
- Java--反射(框架设计的灵魂)案例 2020-06-11
IDC资讯: 主机资讯 注册资讯 托管资讯 vps资讯 网站建设
网站运营: 建站经验 策划盈利 搜索优化 网站推广 免费资源
网络编程: Asp.Net编程 Asp编程 Php编程 Xml编程 Access Mssql Mysql 其它
服务器技术: Web服务器 Ftp服务器 Mail服务器 Dns服务器 安全防护
软件技巧: 其它软件 Word Excel Powerpoint Ghost Vista QQ空间 QQ FlashGet 迅雷
网页制作: FrontPages Dreamweaver Javascript css photoshop fireworks Flash