Java的数据类型转换
2016-04-23 12:57
573 查看
Java中的数据类型转换
总述
java数据类型分为3大类:布尔型,字符型和数值型。数值型又分为整形和浮点型。
布尔型:boolean
字符型:char
整形:byte short int long
浮点型:float double
此外,还经常用到的两种类变量:String 和 Date
数据类型转换一般分为三种:
简单数据类型之间的转换
字符串与其他类型数据的转换 其他实用数据类型的转换
1:简单数据类型之间的转换
Java中,整形,字符型都被视为是简单数据类型,这些类型数据的优先级是(从低到高):(byte,short,char)- int - long - float - double。
简单数据类型之间的转换又分为三种:
1.1低级到高级的自动类型转换;
1.2高级到低级的强制类型转换;
1.3包装类过度类型转换
1.1低级到高级得自动类型转换
例如:下面的语句就可以编译通过
注意一下两种情况:
1.1.1如果低级类型是char类型,向高级转换时会转换为对应的ASCLL码。例如
输出结果是48,即字符'0'对应的ASCLL码。
1.1.2char byte short属于同一个优先级,不能相互转换,只能通过强制转换实现。
1.2强制类型转换
将高级类型转换为低级类型,或者同级类型之间的转换,使用强制类型转换。例如:
缺点:这种转换可能会造成溢出或者精度的下降。
1.3包装类过渡类型的转换
Java的包装类就是可以直接将简单类型的变量表示一个类。Java中共6个包装类,他们以及对应的数据类型分别是:Boolean--boolean Integer--char Character--char Long--long Float--float Double--double。而对于String和Date本身就是类,不存在包装类的概念。
使用自动类型转换或者强制类型转换时,可以利用包装类进行过渡,以保证其精度。
例如: 1--float转换成double
2--double转换成int 类型
2.字符串型与其他类型的转换
toString()方法:
几乎从java.lang.Object类中的所有类都提供了toString()方法;
例如,将int 类型装换成String类型
3.将字符型直接作为数值转换为其他数据类型
两种对应关系:
3.1转换为对应的ASCLL码,此方法不在赘述;
3.2转换关系:比如 ‘1’转换为 1;
使用方法:Character中的getNumericValues(char ch);
总述
java数据类型分为3大类:布尔型,字符型和数值型。数值型又分为整形和浮点型。
布尔型:boolean
字符型:char
整形:byte short int long
浮点型:float double
此外,还经常用到的两种类变量:String 和 Date
数据类型转换一般分为三种:
简单数据类型之间的转换
字符串与其他类型数据的转换 其他实用数据类型的转换
1:简单数据类型之间的转换
Java中,整形,字符型都被视为是简单数据类型,这些类型数据的优先级是(从低到高):(byte,short,char)- int - long - float - double。
简单数据类型之间的转换又分为三种:
1.1低级到高级的自动类型转换;
1.2高级到低级的强制类型转换;
1.3包装类过度类型转换
1.1低级到高级得自动类型转换
例如:下面的语句就可以编译通过
<span style="white-space:pre"> </span>byte b; int i = b; long l = i; float f = l; double d = f;</span>
注意一下两种情况:
1.1.1如果低级类型是char类型,向高级转换时会转换为对应的ASCLL码。例如
public class test { public static void main(String args[]){ int j=0; System.out.println(j+'0');//低级向高级要转换为ASCLL码 } }
输出结果是48,即字符'0'对应的ASCLL码。
1.1.2char byte short属于同一个优先级,不能相互转换,只能通过强制转换实现。
1.2强制类型转换
将高级类型转换为低级类型,或者同级类型之间的转换,使用强制类型转换。例如:
public class test { public static void main(String args[]){ int j=0; System.out.println(j+'0');//低级向高级要转换为ASCLL码 } }
缺点:这种转换可能会造成溢出或者精度的下降。
1.3包装类过渡类型的转换
Java的包装类就是可以直接将简单类型的变量表示一个类。Java中共6个包装类,他们以及对应的数据类型分别是:Boolean--boolean Integer--char Character--char Long--long Float--float Double--double。而对于String和Date本身就是类,不存在包装类的概念。
使用自动类型转换或者强制类型转换时,可以利用包装类进行过渡,以保证其精度。
例如: 1--float转换成double
<span style="white-space:pre"> </span>float f = 100.00f; Float F1 = new Float(f); double d = F1.doubleValue();
2--double转换成int 类型
double d1 = 100.00; Double D1 = new Double(d1); int i1 = D1.intValues();
2.字符串型与其他类型的转换
toString()方法:
几乎从java.lang.Object类中的所有类都提供了toString()方法;
例如,将int 类型装换成String类型
int i = 123; Integer I = new Integer(i); String str = I.toString();
3.将字符型直接作为数值转换为其他数据类型
两种对应关系:
3.1转换为对应的ASCLL码,此方法不在赘述;
3.2转换关系:比如 ‘1’转换为 1;
使用方法:Character中的getNumericValues(char ch);
相关文章推荐
- MySQL中的integer 数据类型
- java对世界各个时区(TimeZone)的通用转换处理方法(转载)
- java-注解annotation
- java-模拟tomcat服务器
- java-用HttpURLConnection发送Http请求.
- java-WEB中的监听器Lisener
- Android IPC进程间通讯机制
- Android Native 绘图方法
- Android java 与 javascript互访(相互调用)的方法例子
- 介绍一款信息管理系统的开源框架---jeecg
- 聚类算法之kmeans算法java版本
- java实现 PageRank算法
- PropertyChangeListener简单理解
- c++11 + SDL2 + ffmpeg +OpenAL + java = Android播放器
- 插入排序
- 冒泡排序
- 堆排序
- 快速排序