CoreJava基础之包装类(重点)

1.概念

基本数据类型所对应的对象类型

2.类型匹配

基本数据类型 对应的对象类型
byte Byte
short Short
int Integer
long Long
float Float
double Double
boolean Blooean
char Character

3.优点

(1)作为对象类型的数据可以被Object类统一管理

(2)包装类的默认值为:null  可以有效的区分有和无

(3)支持缓存,节省空间

4.常用方法

(1)基本数据类型转换为包装类型

<1>构造方法转换:

public class IntegerToInt01 {

	public static void main(String[] args) {
		// TODO Auto-generated method stub
		//1.构造方法转换
		//int->Integer 
		Integer int01=new Integer(10);
		System.out.println(int01);
		//byte->Byte
		Byte by01=new Byte((byte)20);
		System.out.println(by01);
		//double->Double
		Double db01=new Double(20.0);
		System.out.println(db01);
		//long->Long
		Long lg01=new Long(100);
		System.out.println(lg01);
		//boolean->Boolean
		Boolean bl=new Boolean(true);
		System.out.println(bl);
		//char->Character
		Character ch01=new Character('A');
		System.out.println(ch01);
	}

}

<2>valueOf方法转换

public class IntegerToInt02 {
	public static void main(String[] args) {
		//2.valueOf方法转换
		//int->Integer
		Integer in01=Integer.valueOf(10);
		System.out.println(in01);
		//byte->Byte
		Byte by01=Byte.valueOf((byte) 127);
		System.out.println(by01);
		//short->Short
		Short sh01=Short.valueOf((short) 32767);
		System.out.println(sh01);
		//long->Long
		Long long01=Long.valueOf(2147483647);
		System.out.println(long01);
		//float->Float
		Float fl01=Float.valueOf((float) 12.2);
		System.out.println(fl01);
		//double ->Double
		Double db01=Double.valueOf(12.22);
		System.out.println(db01);
		//boolean->Boolean
		Boolean bl=Boolean.valueOf(false);
		System.out.println(bl);
		//char->Character
		Character ch01=Character.valueOf('A');
		System.out.println(ch01);
	}
}

(2)包装类型转换为基本数据类型

格式:

public  xxx xxValue();

xxx:目标类型

xx:目标类型名称


public class IntegerToInt03 {

	public static void main(String[] args) {
		// TODO Auto-generated method stub
		//包装类型转换为基本数据类型
		//1.Integer->int
		Integer int01=Integer.valueOf(12);
		int int02=int01.intValue();
		System.out.println(int02);
		//2.Byte->byte
		Byte by01=Byte.valueOf((byte) 127);
		byte by02=by01.byteValue();
		System.out.println(by02);
		//3.Short->short
		Short sh01=Short.valueOf((short) 214755);
		short sh02=sh01.shortValue();
		System.out.println(sh02);
		//4.Long->long
		Long lg01=Long.valueOf(124511);
		long lg02=lg01.longValue();
		System.out.println(lg02);
		//5.Float->float
		Float ft01=Float.valueOf((float) 12.2);
		float ft02=ft01.floatValue();
		System.out.println(ft02);
		//6.Double->double
		Double db01=Double.valueOf(12.22);
		double db02=db01.doubleValue();
		System.out.println(db02);
		//7.Boolean->boolean
		Boolean bl01=Boolean.valueOf(true);
		boolean bl02=bl01.booleanValue();
		System.out.println(bl02);
		//8.Character->char
		Character ch01=Character.valueOf('B');
		char ch02=ch01.charValue();
		System.out.println(ch02);
	}

}

(3)将字符串类型转换成包装类型


public class StringToInt01 {
	public static void main(String[] args) {
		//将字符串类型转化为包装类型
		//1.String->Integer
		Integer in01=Integer.valueOf("100");
		System.out.println(in01);
		//2.String->Double
		Double db01=Double.valueOf("12.25");
		System.out.println(db01);
		//3.String->Float
		Float fl01=Float.valueOf("12.25");
		System.out.println(fl01);
		//4.String->Byte
		Byte by01=Byte.valueOf("127");
		System.out.println(by01);
		//·······
	}
}

(4)将字符串转换为基本数据类型


public class StringToInt02 {
	public static void main(String[] args) {
		//将String字符串转化为基本的数据类型
		//1.String->int
		int in01=Integer.parseInt("125452");
		System.out.println(in01);
		//2.String->double
		double db01=Double.parseDouble("12.244");
		System.out.println(db01);
		//3.String->float
		float fl01=Float.parseFloat("12.20");
		System.out.println(fl01);
		//4.String->byte
		byte bt01=Byte.parseByte("127");
		System.out.println(bt01);
		//以此类推····
	}
}

(5)自动封箱和自动拆箱【JDK1.5以后】

JDK1.5进行更新后 可以自动完成基本数据类型到对象类型的转换(自动封箱)

                                                     对象类型到基本数据类型的转换(自动拆箱)


public class StringToInt03 {
	public static void main(String[] args) {
		//自动封装箱
		//1.
		Integer a01=10;
		int b01=a01;
		//相当于2.
		Integer a02=Integer.valueOf(10);
		int b02=a02.intValue();
		
		//3.
		Double db01=2.5;
		double db02=db01;
		//相当于4.
		Double db03=Double.valueOf(2.5);
		double db04=db03.doubleValue();
		
		//5.
		Object o01=10;
		Object o02=2.35;
		//相当于6.
		Object o03=Integer.valueOf(10);
		Object o04=Double.valueOf(2.35);
	}
}

猜你喜欢

转载自blog.csdn.net/erpang7/article/details/81835230