java数据类型转换汇总

来源:互联网 发布:nginx 允许目录浏览 编辑:程序博客网 时间:2024/05/22 00:40

Java的数据类型的转换一般分为三种,分别是:简单数据类型之间的转换、字符串与其他数据类型的转换、其他实用数据类型的转换。

一、简单数据类型之间的转换

在java中,整型、实型、字符型被视为简单数据类型,这些类型由低级到高级分别为(byte,short,char)——int——long——float——double。

简单数据类型之间的转换又可以分为:低级到高级的自动类型转换、高级到低级的强制类型转换、包装类过渡类型能够转换。

1)自动类型转换

低级变量可以直接转换为高级状态,这叫自动类型转换,例如:

byte b;int i=b;long l=b;float f=b;double d=b;
如果低级类型为char型,向高级状态转换时,会转换成对应的ASCII码值,例如:

char c;int i=c;System.out.printlin(i);
输出为:99

对于byte、short、char三种类型而言,它们是同级别的,因此,不能相互自动转换,可以使用下述 的强制类型转换:

short i=99;char c=(char)I;

2)强制类型转换

将高级变量转换为低级变量时,情况会复杂一些:

int i=99;byte b=(byte)i;char c=(char)c;

这中转换可能会导致溢出或精度下降。

3)包装类过渡类型转换

         Java的包装类就是可以直接将简单类型的变量表示为一个类。Java共有六个包装类,分别是Boolean、Character、Long、Float和Double,从字面上可以看出它们分别对应于 boolean、char、int、long、float和double,而String和Date本身就是类,不存在包装类的概念。

        在进行简单数据类型之间的转换时,可以利用包装类进行中间过渡,一般情况下,首先声明一个变量,然后生成一个对应的包装类,就可以利用包装类的各种方法进行类型转换了,例如当希望把float类型转换为double型时:

float f1=100.00f;Float F1=new float(f1);Double d1=F1.doubleValue();


二、字符串型与其他数据类型的转换

         通过查阅类库中各个类提供的成员方法可以看到,几乎从java.lang.Object类派生的所有类都提供了toString()方法,即将该转换为字符串。例如:Character、Integer、Float、Double、Boolean、Short等类的toString()方法用于将字符、整数、浮点数、双精度数、逻辑数、短整型等类型转换为字符串。

三、将字符型直接作为数值转换为其他数据类型

       将字符型变量转换为数值型变量实际上有两种对应关系:一种是将其转换成对应的ASCII码;另一种是转换关系,例如’1’就是指数值1,而不是ASCII码。


0 0
原创粉丝点击