包装类(wrapper)
1、jdk5之前为手动装箱和拆箱的方式。装箱:基本类型→ 包装类型拆箱: 包装类型 → 基本类型2、jdk5之后为自动装箱和封箱3、自动装箱调用的为valueOf,拆箱调用的为,intValue。
·
包装类(wrapper)
包装类和基本数据类型间的转换(Interger演示)
public class WrapperType01 {
public static void main(String[] args) {
int a = 10;
// 手动封箱,
Integer integer = Integer.valueOf(a);
System.out.println(integer);
// 手动拆箱
int i = integer.intValue();
System.out.println(i);
// 自动封箱
Integer integer2 = a;
// 自动拆箱
int i2 = integer2;
System.out.println(integer2 + " i2 " + i2);
}
}
1、jdk5之前为手动装箱和拆箱的方式。
装箱:基本类型→ 包装类型 拆箱: 包装类型 → 基本类型
2、jdk5之后为自动装箱和封箱
3、自动装箱调用的为valueOf,拆箱调用的为,intValue
其他的包装类与基本类型的转换方法相同。
测试
包装类型和String类型间的转换方法:
public class WrapperType03 {
public static void main(String[] args) {
// Integer -> String
Integer i = 10; // 注意声明的类型为 Integer
// 方式一
String s = String.valueOf(i);
// 方式二
String s2 = i + "";
// 方式三
String s3 = i.toString();
// String -> Integer
// 方式一
String s01 = "1235";
// 方式二
int i1 = Integer.parseInt(s01);
System.out.println(i1);
}
}
包装类常用的用法:
// 整数最大值
System.out.println(Integer.MAX_VALUE);
// 整数最小值
System.out.println(Integer.MIN_VALUE);
// 判断是不是数字
System.out.println(Character.isDigit(10));
System.out.println(Character.isLetter('s'));
// 判断是不是小写字母
System.out.println(Character.isLowerCase('d'));
// 判断是不是大写字母 注意是对字符进行判断
System.out.println(Character.isUpperCase('F'));
// 是不是空格
System.out.println(Character.isWhitespace(' '));
// 转大写
System.out.println(Character.toUpperCase('s'));
// 转小写
System.out.println(Character.toLowerCase('s'));
String name = "zhang";
System.out.println(name.toUpperCase());
面试题
public class WrapperType04 {
public static void main(String[] args) {
// 自动调用了Integer.valueOf(128);
// 既然要比较是否相等,其实看地址是不是相同,
// 看源码,有没有new一个对象。
Integer a = 128;
Integer b = 128;
System.out.println(a == b); // false
Integer a1 = 1;
Integer b1 = 1;
System.out.println(a1 == b1); // true
}
}
// 范围在-128 到 127之间
public static Integer valueOf(int i) {
if (i >= IntegerCache.low && i <= IntegerCache.high)
return IntegerCache.cache[i + (-IntegerCache.low)];
return new Integer(i);
}
注意:
只要有基本数据类型,那么 == ,就是判断的值是否相等。
更多推荐
已为社区贡献4条内容
所有评论(0)