基本數據類型對象包裝類 進制轉換

基本數據類型包裝類

將基本數據類型,封裝成對象,可以操作起來更方便。

比如求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);
	}
}
 
發佈了58 篇原創文章 · 獲贊 18 · 訪問量 5萬+
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章