JAVA增强的包装类
1、基本类型和包装类
JAVA是面对对象的编程语言,但它也包含了8种基本数据类型,但这8中基本数据类型并不支持面对对象编程机制,也不具备“对象”的特性:没有成员变量和方法可以被调用。
JAVA提供了包装类(Wrapper Class),为8种基本类型分别定义了相应的引用类型,并称之为数据类型的包装类。
基本数据类型 | 字节数 | 包装类 |
---|---|---|
byte | 1 | Byte |
short | 2 | Short |
int | 4 | Integer |
long | 8 | Long |
float | 4 | Float |
double | 8 | Double |
char | 2 | Character |
boolean | Boolean |
2、自动装箱和自动拆箱
- 自动装箱
就是可以直接把一个基本数据类型的变量,赋给对应的包装类变量,或者赋值给Object变量。
(Object是所有类的父类,子类的对象可以直接赋值给父类变量) - 自动拆箱
可以直接把包装类的对象直接赋值给一个对应的基本类型变量。
public class BoxingAndUnboxing {
public static void main (String []args){
//自动装箱
Integer intObj=5;
Object boolObj=true;
//自动拆箱
int a = intObj;
if(boolObj instanceof Boolean){
//先把Object对象强制转换为Boolean类型,
// 再赋值给boolean变量
boolean b=(Boolean)boolObj;
System.out.println(b);
System.out.println(intObj);
System.out.println(boolObj);
}
}
}
3、包装类实现基本类型⇄字符串的方法
字符串⇨基本类型
利用包装类提供的,类提供的静态方法parseInt、parseFloat…parseXxx,将String类型的对象转换成为,对应的基本类型
(parse 意思为 :解析),除了char类型外,其他的7种包装类,都提供了该方法* 利用包装类传参为字符串的构造器,Integer(String s)、Long(String s),将String类型的对象转换为,对应的基本类型*
基本类型➱字符串
//基本类型→字符串\\\\\\\
String.valueOf()
public class Primitive2String {
public static void main(String args[]){
//将字符串转换为,对应的基本类型
String s="12345";
int int_1=Integer.parseInt(s);
int int_2=new Integer(s);
String f="123.123";
Float float_1=Float.parseFloat(f);
Float float_2=new Float(f);
System.out.println(int_1);
System.out.println(int_2);
System.out.println(float_1);
System.out.println(float_2);
//将基本类型,转换为字符串
String s1= String.valueOf(2.13f);
String s2=String.valueOf(2.12321312);
String s3=String.valueOf(true);
System.out.println(s1);
System.out.println(s2);
//转换为大写
System.out.println(s3.toUpperCase());
}