基本數據類型包裝類
將基本數據類型,封裝成對象,可以操作起來更方便。
比如求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);
}
}