您的位置:首页 > 编程语言 > Java开发

Java语法--基本类型与包装类

2018-03-17 21:30 246 查看

包装类

为了让基本数据类型也具备对象的特性,Java 为每个基本数据类型都提供了一个
包装类,这样我们就可以像操作对象那样来操作基本数据类型。对应如下:


基本类型包装类
byteByte
shortShort
intInt
longLong
floatFloat
doubleDouble
charChar
booleanBoolean

包装类与基本类型之间的转换

基本类型外覆成封装类的操作称为“装箱”,封装类转换成基本类型的操作称为“拆箱。


eg.

/*装箱*/
int a = 1;
Integer x = a;               //方式一: 自动装箱
Integer y = new Integer(a);   //方式二:手动装箱

/*拆箱*/
Integer a = new Integer(5);
int x = a;                //方式一:
int y = a.intValue();     //方式二:手动拆箱


包装类提供的关于值的方法

valueOf( 数据类型 data )

xxxValue( ) // xxx代表基本类型

关于这两个方法,需要注意:

valueOf() 方法是静态方法,可直接通过类名调用;而xxxValue() 方法是非静态方法,只能通过相应类的对象调用。

xxxValue()方法的返回值为基本类型,而valueOf()方法的返回值为引用类型,即返回其包装类的一个对象。

由上述两点,

double num = 0.5;
double x = Math.floor(num);
int result_one = (int) num ;  //正确
int result_two = (int)Double.valueOf(x) ;  //报错


关于int result = (int)Double.valueOf(x)这句,Double.valueOf(x)
返回一个Double的对象,是不能被(int)Double.valueOf(x)这样强制转换为int基   本类型的。
若要转换,必须先将该Double对象转成基本类型,再强制转换为int型。


//eg.
double tmp = Double.valueOf(x);
int result_two = (int) tmp;
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签:  Java语法