数字与字符串 装箱拆箱
1.封装类
所有的基本类型,都有对应的类类型
比如int对应的类是Integer
这种类就叫做封装类
package pack6;
public class NumberTest {
public static void main(String args[]) {
//把一个基本类型的变量 转换成Double对象
double a = 5.0;
Double b = new Double(a);
//把一个Double对象 转换为一个基本类型的double
double c = b.doubleValue();
System.out.println("b:"+b+" c:"+c);
}
}
2.Number类
数字封装类有
Byte,Short,Integer,Long,Float,Double
这些类都是抽象类Number的子类
3.自动装箱
不需要调用构造方法,通过=符号自动把 基本类型 转换为 类类型 就叫装箱
类类型=基本数据类型
package pack6;
public class NumberTest {
public static void main(String args[]) {
//把一个基本类型的变量 转换成Double对象
double a = 5.0;
Double b = new Double(a);
//自动转换就叫装箱
Double a1=a;
}
}
4.自动拆箱
不需要调用Integer的intValue方法,通过=就自动转换成int类型,就叫拆箱
基本数据类型=类类型
package pack6;
public class NumberTest {
public static void main(String args[]) {
//把一个基本类型的变量 转换成Double对象
double a = 5.0;
Double b = new Double(a);
//自动转换就叫拆箱
double a1=b;
}
}
5.int的最大值和最小值
int的最大值可以通过其对应的封装类Integer.MAX_VALUE获取
package pack6;
public class NumberTest {
public static void main(String args[]) {
//int的最大值
System.out.println(Integer.MAX_VALUE);
//int的最小值
System.out.println(Integer.MIN_VALUE);
}
}
运行结果
练习
-
对byte,short,float,double进行自动拆箱和自动装箱
-
byte和Integer之间能否进行自动拆箱和自动装箱
-
通过Byte获取byte的最大值
package pack6;
public class NumberTest {
public static void main(String args[]) {
//1. 对byte,short,float,double进行自动拆箱和自动装箱
byte a=5;
Byte b=a;
byte c=b;
float a1=5.0f;
Float b1=a1;
float c1=b1;
double a2=5.0;
Double b2=a2;
double c2=b2;
//2.byte和Integer之间是否能进行自动装箱和自动拆箱
byte a3=3;
Integer b3=a3;//不能自动装箱
byte c3=b3;//不能自动拆箱
//3.获取byte的最大值
System.out.println(Byte.MAX_VALUE);//byte的最大值是127
}
}