A股上市公司传智教育(股票代码 003032)旗下技术交流社区北京昌平校区

 找回密码
 加入黑马

QQ登录

只需一步,快速开始

© 迷途老马 中级黑马   /  2015-10-16 22:24  /  212 人查看  /  0 人回复  /   0 人收藏 转载请遵从CC协议 禁止商业使用本文

数据类型之间的转转换分为以下几种情况:  
1. 低级到高级的自动类型转换
2. 高级到低级的强制类型转换(会导致溢出或丢失精度)
3. 基本类型向类类型转换
4. 基本类型向字符串的转换
5. 类类型向字符串转换

基本数据类型之间的转换规则:
1. 在一个双操作数以及位运算等算术运算式中,会根据操作数的类型将低级的数据类型自动转换为高级的数据类型,分为以下几种情况:  
1)只要两个操作数中有一个是double类型的,另一个将会被转换成double类型,并且结果也是double类型;
2)只要两个操作数中有一个是float类型的,另一个将会被转换成float类型,并且结果也是float类型;  
3)只要两个操作数中有一个是long类型的,另一个将会被转换成long类型,并且结果也是long类型;  
4)两个操作数(包括byte、short、int、char)都将会被转换成int类型,并且结果也是int类型。
2. 如果低级类型为char型,向高级类型(整型)转换时,会转换为对应ASCII码值,再做其它类型的自动转换。  
3. 对于byte,short,char三种类型而言,他们是平级的,因此不能相互自动转换,可以使用强制类型转换。
4. 不能在布尔值和任何数字类型间强制类型转换。
5. 不同级别数据类型间的强制转换,可能会导致溢出或精度的下降。
6. 当字节类型变量参与运算,java作自动数据运算类型的提升,将其转换为int类型。

0 个回复

您需要登录后才可以回帖 登录 | 加入黑马