类型转换

来源:互联网 发布:开淘宝店铺的流程 编辑:程序博客网 时间:2024/06/05 19:23
类型转换
一、自动类型转换
1、常数在表数范围内能够自动进行转换。
整数的字面值默认是int类型。
小数的字面值默认是double类型。
byte b = 1; int -> byte可以自动进行类型转换。
byte b1 = 128;超出了byte的表达范围,不可进行类型转换,也不能赋值成功。
2、数据范围小的可以自动向范围大的转换。顺序如下:
byte -> short -> int -> long -> float -> double
char -> int -> long -> float -> double
反之,需要强制类型转换。
需要注意精度问题的有:int -> float、long -> float、long -> double这几种情况
3、引用类型可以自动向父类类型自动转换
例如:
Student s1 = new Student();
Object o1 = s1;//Object类是所有类的父类,即最顶极父类。
4、基本类型和包装类型可以自动转换(JDK5.0及其以上的版本)。
int n = 1;
Integer in = n;//自动封箱
int m = in; //自动解封
二、强制类型转换
格式:(数据类型)变量
例如:
int n = 5; //00000000 00000000 00000000 00000101
byte b1 = (byte)n;//前三个字节舍弃 00000101
原创粉丝点击