java数据类型的转换一般分三种,分别是:
(1).
简单数据类型之间的转换,在Java中整型、实型、字符型被视为简单数据类型,这些类型由低级到高级分别为(byte,short,char)--int--long--float--double
简单数据类型之间的转换又可以分为:
●低级到高级的自动类型转换
●高级到低级的强制类型转换
●包装类过渡类型能够转换
低级变量可以直接转换为高级变量,笔者称之为自动类型转换,例如,下面的语句可以在Java中直接通过:
byte
b;
int i=b;
long
l=b;
float f=b;
double
d=b;
如果低级类型为char型,向高级类型(整型)转换时,会转换为对应ASCII码值,例如r
char
c=‘c‘;
int
i=c;
System.out.println("output:"
i);
输出:output:99;
对于byte,short,char三种类型而言,他们是平级的,因此不能相互自动转换,可以使用下述的强制类型转换。
short
i=99;
char c=(char)i;
System.out.println("output:" c);
输出:output:c;
但根据笔者的经验,byte,short,int三种类型都是整型,因此如果操作整型数据时,最好统一使用int型。
将高级变量转换为低级变量时,情况会复杂一些,你可以使用强制类型转换。即你必须采用下面这种语句格式:
int
i=99;
byte b=(byte)i;
char c=(char)i;
float
f=(float)i;
可以想象,这种转换肯定可能会导致溢出或精度的下降,因此笔者并不推荐使用这种转换。
1、float型转换为double型:
float f=100.00f;
Float F=new Float(f1);
double f=F.doubleValue();
2、double型转换为int型:
double d=100.00;
Double D=new Double(d);
int i=D.intValue();
3、int型转换为double型:
int i=200;
double d=i;
(2). 字符串与其它数据类型的转换
4、字符串与其它类型间的转换:
⑴其它类型向字符串的转换
①调用类的串转换方法:X.toString();
②自动转换:X+“”;
③使用String的方法:String.volueOf(X);
⑵字符串作为值,向其它类型的转换
①先转换成相应的封装器实例,再调用对应的方法转换成其它类型
例如,字符中“32.1”转换double型的值的格式为:new
Float(“32.1”).doubleValue()。
也可以用:Double.valueOf(“32.1”).doubleValue()
②静态parseXXX方法
String s =
"1";
byte b = Byte.parseByte( s
);
short t = Short.parseShort( s
);
int i = Integer.parseInt( s
);
long l = Long.parseLong( s
);
Float f = Float.parseFloat( s
);
Double d = Double.parseDouble( s );
③Character的getNumericValue(char
ch)方法
具体可查阅api。
(3). 其它实用数据类型转换