包装类
程序示例
/*
包装类:
需求1:将100这个数据,计算出它的二进制,八进制,十六进制
需求2:如何用代码求出int类型的数据范围
为了对基本数据类型进行更多、更方便的操作,Java就针对每一个基本数据类型
提供了对应的类的类型。我们叫做包装类类型。
包装类类型:
byte Byte
short Short
int Integer
long Long
float Float
double Double
char Character
boolean Boolean
包装类常见的使用场景:
1、集合中的泛型:集合中的数据类型都是引用数据类型不能存放基本数据类型
2、用于基本数据类型与字符串之间做转换使用
*/
//这里就用int类型的举例,其他类型同理
public class PackingDemo1 {
public static void main(String[] args) {
//public static String toBinaryString(int i) 求int类型数据的二进制
String s = Integer.toBinaryString(100);
System.out.println("100的二进制为:" + s);//1100100
//public static String toOctalString(int i) 求出int类型数据的八进制
String s1 = Integer.toOctalString(100);
System.out.println("100的八进制为:" + s1);//144
//public static String toHexString(int i) 求出int类型数据的十六进制
String s2 = Integer.toHexString(100);
System.out.println("100的十六进制为:" + s2);//64
//求出int类型数据的最小值
//public static final int MIN_VALUE
System.out.println("int类型数据的最小值为:" + Integer.MIN_VALUE);//-2147483648
//求出int类型数据的最大值
//public static final int MAX_VALUE
System.out.println("int类型数据的最大值为:" + Integer.MAX_VALUE);//2147483647
}
}
/*
使用场景:
用于基本数据类型与字符串之间做转换使用
int类型与String类型相互转换
int --> String
public static String valueOf(int i)
String --> Integer --> int
public static int parseInt(String s)
将字符串解析成一个十进制的整数,如果字符串中有不是整数的字符出现,报错转换不了
*/
public class PackingDemo2 {
public static void main(String[] args) {
System.out.println("********** int --> String ****************");
int num = 100;
//方式1:public static String valueOf(int i)
String s = String.valueOf(100); //--------------------日后开发很常用
System.out.println(s);//100
System.out.println("**********************************");
//方式2:int -> Integer -> String
//Integer(int value)
//构造一个新分配的 Integer对象,该对象表示指定的 int值。
Integer integer = new Integer(num);
System.out.println(integer); //100 -- Integer重写了toString()方法
//public String toString()返回String表示此对象Integer的价值。
String s2 = integer.toString();
System.out.println(s2);//100
System.out.println("**********************************");
//方式3:与空字符串拼接
String s3 = "" + num;
System.out.println(s3);//100
System.out.println("**********************************");
//方式4:public static String toString(int i)
String s4 = Integer.toString(100); //--------------------日后开发很常用
System.out.println(s4);//100
System.out.println("********** String --> int ****************");
String string = "100";
//String --> Integer --> int
//方式1:构造方法
Integer integer1 = new Integer(string);
System.out.println(integer1);//100
//public int intValue() 将 Integer的值作为 int 。
int i = integer1.intValue();
int i2 = integer1; //包装类中称之为自动拆箱
Integer integer2 = 100; //包装类中称之为自动装箱
System.out.println(i);//100
System.out.println("**********************************");
//方式2:
//public static int parseInt(String s)
int i1 = Integer.parseInt("100"); //--------------------日后开发很常用
System.out.println(i1);//100
//注意:
//编译没报错
// int i3 = Integer.parseInt("100abc");
//运行报错了--整型里面不能带字母
// System.out.println(i3);//NumberFormatException
}
}