基本类型的数据都存放栈中,没有属性和方法能调用,而将基本类型转换为对应的包装类型,就可以实现引用类型的功能了
基本数据类型 | 包装类型 |
---|---|
byte | Byte |
short | Short |
int | Integer |
long | Long |
float | Float |
double | Double |
char | Character |
boolean | Boolean |
public class Hello { public static void main(String[] args) { int a = 1; Integer A = a; //自动装箱 System.out.println(A.getClass()); //class java.lang.Integer int b = A; //自动拆箱 } }
注意要保证类型兼容
public class Hello { public static void main(String[] args) { int a = 15; //包装类型.toString()方法将基本类型转换为字符串 String str = Integer.toString(a, 16); //可以指定要转换的进制 System.out.println(str); //Integer.parseInt()方法将字符串转换为整数 String s = "150"; int n = Integer.parseInt(s); System.out.println(n); //Boolean.parseBoolean(a)方法中,除非a == "true",否则结果都是false String s1 = "tru"; Boolean c = Boolean.parseBoolean(s1); System.out.println(c); //false } }
Java预先创建了256个常用的整数包装类型对象(-128~127),对这些已创建的对象进行复用
public class Hello { public static void main(String[] args) { Integer a = new Integer(100); Integer b = new Integer(100); System.out.println(a == b); //false Integer c = 100; Integer d = 100; System.out.println(c == d); //true,在缓冲区范围内的整数都是同一个引用对象 Integer e = 200; Integer f = 200; System.out.println(e == f); //false } }