Java中的包装器类(带有示例)

众所周知,
Java是一种面向对象的语言,即严格遵循类和对象的原则,但是Java不是100%OOP语言也确实如此,原因是Java仍然使用原始数据类型,例如int, char,float,long,double等。人们感到有必要将这些原始数据类型转换为类和对象,因此Java引入了一种称为包装器类的概念

包装器类的对象包装原始数据类型,当我们需要在原始数据类型上使用更多方法时,例如在假设我们要将Non-String Object转换为String类型(使用toString()method)时,这toString()将很方便返回对象的字符串表示形式。同样,我们可以有许多其他示例。

回到Java的Wrapper类,让我们看看Java中可用的Wrapper类。

数据类型包装类
intInteger
floatFloat
longLong
byteByte
shortShort
charCharacter
doubleDouble
booleanBoolean

让我们来讨论两个与包装器类相关的概念,它们非常简单:

装箱

原始数据类型到相应对象的转换称为装箱,它由编译器在构造函数的帮助下处理。

System.out.println("Enter an Integer:");
int n=KB.nextInt();
Integer I=new Integer(n); //装箱:创建整数对象
System.out.println(I);

输出结果:

Input: 8
Output: 8

拆箱

可以将其与装箱相反,当需要将对象转换回相应的原始数据类型时,则称为拆箱。

Integer I=new Integer(n);
inti=I; //拆箱:将对象转换为原始类型
System.out.println(i);

输出结果

Input: 8
Output: 8

示例

import java.util.*;class Wrapper{
	public static void main(String args[])
	{
		Scanner KB=new Scanner(System.in);

		//int-		Integer

		System.out.println("Enter an Integer:");
		int n=KB.nextInt();
		Integer I=new Integer(n);
		System.out.println(I);

		//long-		Long

		System.out.println("Enter a Long Integer:");
		long l=KB.nextLong();
		Long L=new Long(l);
		System.out.println(L);

		//float- 	Float

		System.out.println("Enter a Float Value:");
		float f=KB.nextFloat();
		Float F=new Float(f);
		System.out.println(F);

		//char-		Character

		System.out.println("Enter a Character:");	
		char c=KB.next().charAt(0);
		Character C=new Character(c);
		System.out.println(C);

		//double-	Double

		System.out.println("Enter a Double:");
		Double d=KB.nextDouble();
		Double D=new Double(d);
		System.out.println(D);

	}}

输出结果:

Enter an Integer:
8
8
Enter a Long Integer:
1234567898745
1234567898745
Enter a Float Value:
8.8
8.8
Enter a Character:
c
c
Enter a Double:
12.55
12.55