基本數(shù)據(jù)類型的包裝類.doc_第1頁
基本數(shù)據(jù)類型的包裝類.doc_第2頁
基本數(shù)據(jù)類型的包裝類.doc_第3頁
基本數(shù)據(jù)類型的包裝類.doc_第4頁
全文預(yù)覽已結(jié)束

下載本文檔

版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)

文檔簡介

基本數(shù)據(jù)類型的包裝類 Integer類 字符串和基本數(shù)據(jù)類型的包裝類-android培訓(xùn)、java培訓(xùn)、java學(xué)習(xí)型技術(shù)博客、期待與您交流!-1. 基本數(shù)據(jù)類型包裝類1). 基本數(shù)據(jù)類型包裝類存在的意義(1). 比如int有自己的取值范圍,但是是一個(gè)數(shù)字都很大的取值范圍,很難記憶。(2). 一個(gè)數(shù)的二進(jìn)制轉(zhuǎn)換成十進(jìn)制,大小是多少?以上的細(xì)節(jié)如果能封裝到一個(gè)對(duì)象里面,這樣程序使用起來會(huì)非常方便。2). 基本數(shù)據(jù)類型的包裝類位于java.lang包中,對(duì)應(yīng)關(guān)系如下charCharacterbyteByte、shortShort、intinteger、longLongbooleanBooleanfloatFloat、doubleDouble【這些類都比較相似,以Integer為例做講解】2. Integer類1). Integer類的字段publicstaticfinalintMIN_VALUE= 0x80000000;/全局常量:整形中最大值(231 -1)publicstaticfinalintMAX_VALUE= 0x7fffffff; /全局常量:整形中最小值(-231)【作用】基本數(shù)據(jù)包裝類的全局字段:用于判定一個(gè)數(shù)是否在整數(shù)的范圍內(nèi)2). Integer類常用的方法基本數(shù)據(jù)類型的包裝類的常用方法就是:幫助基本數(shù)據(jù)類型和字符串類型之間做轉(zhuǎn)換(1).基本數(shù)據(jù)類型轉(zhuǎn)換成String類型(以Integer為例)1.運(yùn)算符操作法:基本數(shù)據(jù)類型數(shù)據(jù)+ 2.靜態(tài)作法:基本數(shù)據(jù)類型包裝類.toString(基本類型數(shù)據(jù))3.非靜態(tài)方法:Object類的toString()方法(2).String類型轉(zhuǎn)換成基本數(shù)據(jù)類型1.靜態(tài)方法:基本數(shù)據(jù)類型包裝類.parseXxx(str)2.非靜態(tài)方法:基本數(shù)據(jù)類型包裝類對(duì)象.xxxValue(str)【注】xxx代表基本數(shù)據(jù)類型Xxx代表基本數(shù)據(jù)類型對(duì)應(yīng)的包裝類【注意】1Character沒有parseXxx(str)這個(gè)方法與之對(duì)應(yīng)的是:Character.toUpperCase(charch)和Character.toUpperCase(char ch)可以把對(duì)應(yīng)的字符進(jìn)行大小寫轉(zhuǎn)換【注意】2char本身就是String的組成部分,所以不用轉(zhuǎn)換【注意】3parseXxx(str)中的str必須是數(shù)字格式的,否則拋出異常e.g.xxx是int的話,則Xxx表示Integer;xxx是char,則Xxx是Character(3). 進(jìn)制轉(zhuǎn)換和移位運(yùn)算舉例(Integer為例)1.進(jìn)制轉(zhuǎn)換操作【轉(zhuǎn)二進(jìn)制字符串】publicstaticStringtoBinaryString(inti)【轉(zhuǎn)十六進(jìn)制字符串】publicstaticString toHexString(inti)【轉(zhuǎn)八進(jìn)制字符串】publicstaticString toOctalString(inti)【parseXxx重載形式】staticintparseInt(String s,intradix)radix表示字符串s中的整數(shù)的進(jìn)制表示形式x=Integer.parseInt(110, 2);/說明字符串中110是二進(jìn)制形式System.out.println(x);/打印結(jié)果6二進(jìn)制的110-十進(jìn)制數(shù)字是6x=Integer.parseInt(3c, 16);/說明字符串中3c是十六進(jìn)制形式System.out.println(x);/打印結(jié)果60十六進(jìn)制的3c-十進(jìn)制數(shù)字是602.移位操作【左移位】staticintrotateLeft(inti,intdistance)【右移位】staticintrotateRight(inti,intdistance)(4). 基本數(shù)據(jù)類型的equals()方法包裝類重寫了Object的equals方法,用于比較兩個(gè)數(shù)值大小是否相同e.g.Integer x =newInteger(123);/接受字符串Integer y =newInteger(123);/接受整型值/new出來的兩個(gè)不同對(duì)象,地址一定不一樣,打印falseSystem.out.println(x =y);/x和y的值都是123所以equals比較結(jié)果為trueSystem.out.println(x.equals(y);3. 基本數(shù)據(jù)包裝類的新特性(1). 自動(dòng)裝箱和自動(dòng)拆箱【自動(dòng)裝箱和自動(dòng)拆箱新特性的目的】簡化書寫1.自動(dòng)裝箱2.自動(dòng)拆箱自動(dòng)拆箱的原理:調(diào)用的基本包裝類對(duì)象.xxxValue();【解釋】x =x+2:賦值運(yùn)算左邊是x+2x是Integer類型的對(duì)象,自動(dòng)拆箱成基本數(shù)據(jù)類型,和整形數(shù)據(jù)2進(jìn)行相加。相加的整形結(jié)果再次自動(dòng)裝箱成Integer對(duì)象,讓引用x指向這個(gè)新的Integer對(duì)象。為什么不是2自動(dòng)裝箱成Integer對(duì)象在進(jìn)行運(yùn)算呢?因?yàn)镮nteger這個(gè)類沒有定義+這個(gè)運(yùn)算。注意【異常拋出】當(dāng)包裝類引用指向null的時(shí)候,是不能進(jìn)行自動(dòng)拆箱的。因?yàn)樽詣?dòng)拆箱的原理就是調(diào)用方法調(diào)用的基本包裝類對(duì)象.xxxValue();但是自動(dòng)拆箱的時(shí)候,運(yùn)算的元素是null。null是沒有辦法調(diào)用成員變量和函數(shù)的,所以拋出空指針異常舉例:(2). 當(dāng)整形數(shù)值大小在一個(gè)字節(jié)byte之間并且被封裝成基本數(shù)據(jù)類型對(duì)應(yīng)的對(duì)

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫網(wǎng)僅提供信息存儲(chǔ)空間,僅對(duì)用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。

評(píng)論

0/150

提交評(píng)論