概述:
基本数据类型对应引用数据类型的类就叫做包装类
主要就定义了基本数据类型和字符串以及包装类之间相互转换的功能
基本数据类型不是对象,所以Java针对基本类型提供了对应的包装类,以对象的形式来使用
基本数据类型【四类八种】 包装类
byte ------------------------------- Byte
short ------------------------------ Short
int ---------------------------------- Integer 【特殊】
long -------------------------------- Long
float -------------------------------- Float
double ---------------------------- Double
char -------------------------------- Character【特殊】
boolean --------------------------- Boolean
注意:
- 除了Character类以外,其他七种包装类都有parseXxx() 方法
- 因为如果字符串想转换成char类型的数据,可以通过: String类中的方法toCharArray(),charAt();
Integer
(包装类的用法基本一致,所以这里就只介绍一种)
概述:
就是int对应的包装类,定义了int整数和字符串以及Integer之间相互转换的功能
一、构造方法
Integer(int num):
把int数字变为Integer的对象
Integer(String s):
把数字字符串变为Integer的对象
s:参数不能随便传的 只能传入数字字符串 比如 “254”
二、普通成员方法:
intValue():
把Integer对象中的数值变为int类型的数字
三、静态成员方法:
parseInt(String s ):
把数字字符串变成int类型的数字
【parse就是解析的意思,就是把字符串变为其他类型的数据】
toBinaryString(int i):
把int数字变为字符串二进制数的形式
toOctalString(int i):
把int数字变为字符串八进制数的形式
toHexString(int i ):
把int数字变为字符串十六进制数形式
toString(int i, int radix):
把int数字变为指定进制数的字符串形式
valueOf(String s):
把数字字符串变为Integer对象【功能和构造方法一样】
valueOf(int i):
把数字变为Integer对象【功能和构造方法一样】
代码示例:
public class IntegerDemo {
public static void main(String[] args) {
//把数字和数字字符串转变为Integer对象
Integer i1 = new Integer("123456");
// Integer i2 = new Integer("张三"); //会报错,只能传数字类型字符串
Integer i3 = new Integer(123456);
System.out.println(i1); //123456
System.out.println(i3); //123456
//成员方法
int num = i1.intValue(); //把Integer对象中的数值变为int类型的数字
System.out.println(num);//123456
//静态方法
int i4 = Integer.parseInt("123"); //把数字字符串变成int类型的数字
System.out.println(i4); //123
String s1 = Integer.toBinaryString(10); //把int类型变为二进制
System.out.println(s1); //1010
String s2 = Integer.toOctalString(10); //把int数字变为字符串八进制数的形式
System.out.println(s2); //12
String s3 = Integer.toHexString(10); //把int数字变为字符串十六进制数的形式
System.out.println(s3); //a
String s4 = Integer.toString(10, 3); //把int数字变为指定进制数的字符串形式,前边为须转换数,后变为几进制
System.out.println(s4); //101
Integer s5 = Integer.valueOf("123456"); // 把数字字符串变为Integer对象【功能和构造方法一样】
System.out.println(s5); //123456
Integer s6 = Integer.valueOf(123456);//把数字变为Integer对象【功能和构造方法一样】
System.out.println(s6); //123456
}
}
转换
int --> Integer : 构造方法 valueOf
int–> String :toString 家族 + “”
Integer --> int : intValue
Integer --> String : Integer转为int 在调用toString家族转
String–> int :parseInt
String --> Integer :构造方法 valueOf
自动拆装箱
装箱:
就是把基本数据类型的数据转换为对应的包装类对象的过程
涉及的方法:构造方法 valueOf
拆箱:
就是把包装类对象属性的值转变为对应的基本数据类型数据的过程
涉及的方法:intValue【xxxValue】
dk1.5版本是增加了自动拆装箱的操作。
自动拆箱:
就是包装类的对象直接赋值给对应的基本数据类型的变量
比如: int num = new Integer(“123”);
自动装箱:
就是把基本数据类型的数据直接赋值给对应包装类的变量
比如:Integer integer = 100;
Integer中的方法很多使用频率变小,只有parseInt、toString家族
常量
MAX_VALUE:
代表int数据类型的存储的最大的数据值
MIN_VALUE:
代表int数据类型的存储的最小的数据值
SIZE:
长度为32
TYPE:
维护的对应的基本数据类型的执行的对象类型【反射对象】
代码示例:
// 常量:
System.out.println(Integer.MAX_VALUE);// 2147483647
System.out.println(Integer.MIN_VALUE);// -2147483648
System.out.println(Integer.SIZE);// 32
System.out.println(Integer.TYPE);// int