基本數(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),請進(jìn)行舉報或認(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有自己的取值范圍,但是是一個數(shù)字都很大的取值范圍,很難記憶。(2). 一個數(shù)的二進(jìn)制轉(zhuǎn)換成十進(jìn)制,大小是多少?以上的細(xì)節(jié)如果能封裝到一個對象里面,這樣程序使用起來會非常方便。2). 基本數(shù)據(jù)類型的包裝類位于java.lang包中,對應(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ù)包裝類的全局字段:用于判定一個數(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ù)類型包裝類對象.xxxValue(str)【注】xxx代表基本數(shù)據(jù)類型Xxx代表基本數(shù)據(jù)類型對應(yīng)的包裝類【注意】1Character沒有parseXxx(str)這個方法與之對應(yīng)的是:Character.toUpperCase(charch)和Character.toUpperCase(char ch)可以把對應(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方法,用于比較兩個數(shù)值大小是否相同e.g.Integer x =newInteger(123);/接受字符串Integer y =newInteger(123);/接受整型值/new出來的兩個不同對象,地址一定不一樣,打印falseSystem.out.println(x =y);/x和y的值都是123所以equals比較結(jié)果為trueSystem.out.println(x.equals(y);3. 基本數(shù)據(jù)包裝類的新特性(1). 自動裝箱和自動拆箱【自動裝箱和自動拆箱新特性的目的】簡化書寫1.自動裝箱2.自動拆箱自動拆箱的原理:調(diào)用的基本包裝類對象.xxxValue();【解釋】x =x+2:賦值運(yùn)算左邊是x+2x是Integer類型的對象,自動拆箱成基本數(shù)據(jù)類型,和整形數(shù)據(jù)2進(jìn)行相加。相加的整形結(jié)果再次自動裝箱成Integer對象,讓引用x指向這個新的Integer對象。為什么不是2自動裝箱成Integer對象在進(jìn)行運(yùn)算呢?因?yàn)镮nteger這個類沒有定義+這個運(yùn)算。注意【異常拋出】當(dāng)包裝類引用指向null的時候,是不能進(jìn)行自動拆箱的。因?yàn)樽詣硬鹣涞脑砭褪钦{(diào)用方法調(diào)用的基本包裝類對象.xxxValue();但是自動拆箱的時候,運(yùn)算的元素是null。null是沒有辦法調(diào)用成員變量和函數(shù)的,所以拋出空指針異常舉例:(2). 當(dāng)整形數(shù)值大小在一個字節(jié)byte之間并且被封裝成基本數(shù)據(jù)類型對應(yīng)的對

溫馨提示

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

評論

0/150

提交評論