基本数据类型包装类
1、 将基本数据类型封装成对象的好处在于可以在对象中定义更多的功能方法操作数据。
2、 常用的操作之一:用于基本数据类型与字符串之间的转换。
3、 例:Integer的parseInt方法,intValue方法。
为了方便操作基本数据类型值,将其封装成对象,在对象中定义了属性和行为,丰富了该数据的操作。用于描述该对象的类就称为基本数据类型对象包装类。
1)字段摘要
static intMAX_VALUE值为2^31-1的常量,它表示int 类型能够表示的最大值
static intMIN_VALUE值为-2^31的常量,它表示int 类型能够表示的最小值
static Class<Integer> TYPE 表示基本类型int的Class 实例
2)类型转换
基本数据类型转成字符串。
方式:
基本数据类型+""
基本数据类型.toString(基本数据类型值);
例如:Integer.toString(34);//将34整数变成"34";
字符串转成基本数据类型。
int àInteger
intnum = 20;
1,Integer i = new Integer(num);
2,Integer i = Integer.valueOf(num);
Integeràint
Integeri = new Integer(20);
1,int num = i.intValue();
intàString
intnum = 20;
1,String s = String.valueOf(num);
2,String s = ""+num;
3,String s = Integer.toString(num);
Stringàint
Strings = "20";
1,int num = Integer.parseInt(s);
2,Integer I= new Integer(s);
或者Integer i = Integer.valueOf(s);
int num = i.intValue();
注:其他类型转换在本笔记中18页《4.2.5常用类型转换方法》中有具体解释。
例如:
xxxa = Xxx.parseXxx(String);
inta = Integer.parseInt("123");
doubleb= Double.parseDouble("12.23");
booleanb = Boolean.parseBoolean("true");
非静态方法:(integer类中其他全是静态方法)
Integeri = new Integer("123");
intnum = i.intValue();
3)基本数据类型和对象类型对应
byte——Byte
short——Short
int——Integer
long——Long
float——Float
double——Double
boolean——Boolean
char——Character
4)构造方法
Integer(int value) 构造一个新分配的Integer对象,它表示指定的int值。Inreger(String s)
Note:这里的字符串(s)必须是纯数字的字符串。否则会出现数据格式化异常(NumberFormatException)。
5)Integer类
十进制转成其他进制。
toBinaryString();//二进制
toHexString();//十六进制
toOctalString();//八进制
其他进制转成十进制。
parseInt(string,radix);radix表示按照几进制转换的数。
例如:int x = Integer.parseInt("120",2);
sop("x="+x);//sop()代表自定义打印语句的方法
解析:第一行错误,格式错误。意思是将“120”的二进制数字符串转换成十进制数。这个120不是二进制数,这么写真的很“二”!
常用方法:
Integer.toBinaryString();
以二进制(基数2)无符号整数形式返回一个整数参数的字符串表示形式。
Integer.toOctalString();
以八进制(基数8)无符号整数形式返回一个整数参数的字符串表示形式。
Integer.toHexString();
以十六进制(基数16)无符号整数形式返回一个整数参数的字符串表示形式。
staticint Integer.parseInt(String s)
将字符串参数作为有符号的十进制整数进行解析,
字符串必须是int型范围内的数字字符串
staticint Integer.parseInt(String s,int basic)
使用第二个参数指定的基数,将字符串参数解析为有符号的整数.
字符串必须是int型范围内的数字字符串
shortshortValue()以short类型返回该Integer的值。
intintValue()以int类型返回该Integer的值。
staticInteger valueOf(int num)
返回一个表示指定的int 值的Integer 实例。
staticInteger valueOf(String s)
返回保存指定的String的值的Integer对象。
static Integer valueOf(String s, int radix)
返回一个Integer对象,该对象中保存了用第二个参数提供的基数进行
解析时从指定的String中提取的值。
6) JDK5以后新特性
自动装箱,自动拆箱。简化书写。可以直接参与运算。
Integer的值可以为空。当为空时,会报错。Integer的值进行判断比较的是两个对象。当integer的值取-128——127之间的byte范围值时,对于新特性,因为该数值已经存在,则不会开辟新的空间。
例如:Integer m = 128;
Integer n = 128;
sop("m==n:"+(m==n));//结果为false。sop为自定义输出语句方法
Integer a = 127;
Integer b = 127;
sop("a==b:"+(a==b));//结果为true。因为a和b指向了同一个Integer对象。
//因为当数值在byte范围内容,不会在开辟新的空间。
------ Java培训、Android培训、iOS培训、.Net培训、期待与您交流! -------