基本数据类型包装类
将基本数据类型,封装成对象,可以操作起来更方便。
比如求integer的最大值,只接调用MAX_VALUE就能得到,不需要我们记忆确切的值,用起来很方便。
基本数据类型 引用数据类型(类)
byte Byte
short Short
int Integer
long Long
boolean Boolean
float Float
double Double
char Character
Integer.MAX_VALUE 最大值
Integer.MIN_VALUE 最小值
基本数据类型对象包装类的最常见作用:
就是用于基本数据类型和字符串类型之间做转换。
基本数据类型 转成 字符串
1.基本数据类型+“ ”;
// 3+"25"-->325
2.基本数据类型 . toString(基本数据类型值);
Integer.toString(34); 将34整数变成 “34”
字符串 转成 基本数据类型
举例:网页中输入的都是字符串,当我们输入了一个数字,如果需要判断这个数字的大小,我们需要将字符串转化成整数判断。
paers
xxx a = Xxx.parseXxx(String);
int a = Integer.parseInt("123");
double d = Double.parseDouble("12.12");
boolean b = Boolean.parseBoolean("true");
对象调用方式
Integer i = new Integer (“123”);
int num = i.intValue();
class Test
{
public static void main(String[] args)
{
int num = Integer.parseInt("123"); //将“123” -》 int 123
sop("int num="+num);
}
public static void sop(String str)
{
System.out.println(str);
}
}
toLowerCase(char ch)将字母变为小写。
toUpperCase(char ch)将字母变为大写。
十进制 转换成 其他进制
Integer.toBinaryString ();
Integer.toOctalString();
Integer.toHexString();
其他进制 转成 十进制
int x = Integer . parseInt(“1011” ,2);
int x = Integer . parseInt(“76” ,8);
int x = Integer . parseInt(“3c” ,16);
class Test
{
public static void main(String[] args)
{
Integer x = new Integer("123");
Integer y = new Integer(123);
sop("x==y:"+(x==y)); // false 因为是两个对象。
sop("x.equals(y):"+x.equals(y)); // true 比较数值,所以相等。
}
public static void sop(String str)
{
System.out.println(str);
}
}
Integer x = newInteger("123");
Integer y = newInteger(123);
sop("x==y:"+(x==y));// false 因为是两个对象。
sop("x.equals(y):"+x.equals(y));// true 比较数值,所以相等。
JDK1.5之后的新特性
Integer x = new Integer(4);简写为 Integer x = 4 ;
Integer x = 4 ; //自动装箱,4是对象,相当于 new Integer(4);
x = x + 2;
x+2 x进行自动拆箱(x.intValue();),变成了int类型,和2进行加法运算, 再将和进行装箱赋给x。
Integer 会有null值,需要判断是否为空,不为空时,才可运算。
Integer x = 128;
Integer y = 128;
sop(x==y);// false 因为是两个对象。
Integer a = 127;
Integer b = 127;
sop(a==b);// true 因为a和b指向了同一个Integer对象,//因为当数值在byte范围内,对于新特性,如果该数值已经存在,则不会开辟新空间。buye -128--+127。
class Test
{
public static void main(String[] args)
{
Integer x = 128;
Integer y = 128;
sop("x==y:"+(x==y)); // false
Integer a = 127;
Integer b = 127;
sop("a==b:"+(a==b)); // true
/*
结果为true,因为a和b指向了同一个Integer对象,
因为当数值在byte范围内
对于新特性,如果该数值已经存在,则不会开辟新的空间
*/
}
public static void sop(String str)
{
System.out.println(str);
}
}