Java中的包装器类(带有示例)
众所周知,
Java是一种面向对象的语言,即严格遵循类和对象的原则,但是Java不是100%OOP语言也确实如此,原因是Java仍然使用原始数据类型,例如int,char,float,long,double等。人们感到有必要将这些原始数据类型转换为类和对象,因此Java引入了一种称为包装器类的概念。
包装器类的对象包装原始数据类型,当我们需要在原始数据类型上使用更多方法时,例如在假设我们要将Non-StringObject转换为String类型(使用toString()method)时,这toString()将很方便返回对象的字符串表示形式。同样,我们可以有许多其他示例。
回到Java的Wrapper类,让我们看看Java中可用的Wrapper类。
让我们来讨论两个与包装器类相关的概念,它们非常简单:
装箱
原始数据类型到相应对象的转换称为装箱,它由编译器在构造函数的帮助下处理。
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