1.包装类
- 基本数据类型所对应的引用数据类型
- Object可统一所有数据,包装类的默认值是null
- 基本类型没有属性和方法,通过对基本类型进行包装,变为引用类型,才拥有属性和方法
- 基本类型对应的引用类型
2.类型转换之装箱与拆箱
- 装箱:基本类型转换成引用类型
- 拆箱:引用类型转换成基本类型
public class Test {
public static void main(String[] args) {
//JDK1.5之前的装箱与拆箱
//类型转换:装箱:将基本类型转换成引用类型
int num1=18;//存放于栈中
//方法1:通过Integer类的构造方法
Integer integer=new Integer(num1);//存放于堆中
//方法2:valueof方法
Integer integer1=Integer.valueOf(18);
System.out.println(integer1.toString());
System.out.println("____________分割喽____________");
//拆箱
int i = integer1.intValue();//Number为Integer的父类,intValue方法是Integer继承下来的
}
}
JDK1.5后提供自动装箱拆箱
public class Test2 {
public static void main(String[] args) {
//jdk1.5之后可以用自动装箱与拆箱来操作
int age=100;
Integer integer=age;
int age2=integer;
}
}
3.基本类型和字符串之间的转换
基本类型转字符串:
- +“”
- toString()及其重载
字符串转成基本类型:
- 使用包装类的parseXXX方法来进行转换
- 要注意boolean类型,字符串只有为“true”时才能解析为true,其他均为false
public class ToStringDemo {
public static void main(String[] args) {
//将基本类型转换成字符串
int num=255;
//1、通过+连接符
String s1=num+"";
//2、通过包装类的toString方法
String s2=Integer.toString(num);
//返回由第二个参数指定的基数中的第一个参数的字符串表示形式,后面的radix为基数,代表多少进制
String s3=Integer.toString(num,16);//用16进制来转换为字符串
String s4=Integer.toBinaryString(num);//二进制
System.out.println(s3);//ff
System.out.println(s4);//11111111
System.out.println("_________________分割_________________");
//将字符串转换成基本类型
String str1="150";
String str2="FF";
//使用Integer中的parsexxx方法
int num1=Integer.parseInt(str1);
int num2=Integer.parseInt(str2,16);
System.out.println(num1);//150
System.out.println(num2);//255
System.out.println("_________________分割_________________");
//boolean字符串形式只有“true(不区分大小写)”可以转换为true,其他均转成“false”
String str3="true";
boolean b1=Boolean.parseBoolean(str3);
System.out.println(b1);//true
String str4="TRUe";
boolean b2=Boolean.parseBoolean(str4);
System.out.println(b2);//true
String str5="1111";
boolean b3=Boolean.parseBoolean(str5);
System.out.println(b3);//false
}
}