包装类
一切皆对象不适用于基本数据类型,给每一个基本数据类型都提供了包装类型(对象)。基本数据类型不具备对象特征。提供了包装类目的:可以操作对象一样操作基本数据类型。
byte byte类
short short类
int integer类
long long类
float float类
double double类
boolean boolean类
char character类
特点
1.所有的包装类都是final类,不能修改包装的内容。一旦创建一个包装类,数据类型就不能变
作用
1.学习集合的时候,集合的泛型要求必须是包装类型。规定不能用基本数据类型来作为泛型
2.包装类型包含了美中数据类型的很多属性,比如存放值、所占的空间、最大值、最小值
3.作为基本数据类型对应的包装类型,提供很多方法给我们操作,数据类型转化、进制转化
4.包装类对象、值可以用null来表示。基本数据类型不能用null。
public static void main(String[] args) {
/**
* 定义数据
*/
int i = 10;
Integer m = new Integer(10);
Integer k = new Integer(10);
System.out.println(m.equals(k));
/**
* 包装类的表示范围
*/
System.out.println(Integer.MAX_VALUE);
System.out.println(Integer.MIN_VALUE);
System.out.println(Integer.SIZE);
//数据类型强制功能
Integer res = new Integer("123");
System.out.println(res);
}
包装类型的自动装箱和拆箱
int i = 11;
integer j = i;自动装箱
int k = i;自动拆箱
在JDK1.5之前,如果要实现装箱或者拆箱需要手动操作,在JDK1.5之后,应用了自动装箱和拆箱功能
public static void main(String[] args) {
Boolean boo = new Boolean(true); //boolean boo = true;
System.out.println(boo);
Double value = new Double(12.4); //double value =null;
System.out.println(value);
//数据类型的转化 字符转数字
Integer number = new Integer("123");
int h = Integer.parseInt("456");
System.out.println(h);
//将提供字符串转化为int类型(获取的是10进制)的数
int res = Integer.parseInt("100", 2);
System.out.println(res);
int res2 = Integer.parseInt("100", 16);
System.out.println(res2);
int res3 = Integer.parseInt("1100110", 2);
System.out.println(res3);
//将任意的字符串数字,转为你提供的进制数
String s = Integer.toString(100,8);
System.out.println(s);
String s2 = Integer.toString(100,16);
System.out.println(s2);
String s3 = Integer.toString(100,2);
System.out.println(s3);