Java基礎(chǔ)之包裝類(lèi)
一、java的包裝類(lèi)
- 什么是包裝類(lèi)
對(duì)于基本數(shù)據(jù)類(lèi)型來(lái)講,其實(shí)就是一個(gè)數(shù)字,但是當(dāng)給基本數(shù)據(jù)類(lèi)型添加一些屬性 方法和構(gòu)造器,將基本數(shù)據(jù)類(lèi)型對(duì)應(yīng)進(jìn)行一個(gè)封裝,就產(chǎn)生了一個(gè)新的類(lèi),這個(gè)類(lèi)被稱(chēng)為是包裝類(lèi)。
那么基本數(shù)據(jù)類(lèi)型在前面中講過(guò)有byte short int long float double char boolean
,也就是將這些進(jìn)行封裝,基本數(shù)據(jù)類(lèi)型和包裝類(lèi)的對(duì)應(yīng)關(guān)系是怎樣的呢?
基本數(shù)據(jù)類(lèi)型 | 對(duì)應(yīng)的包裝類(lèi) |
byte | Byte |
short | Short |
int | Integer |
long | Long |
float | Float |
double | Double |
char | Char |
boolean | Boolean |
二、Integer包裝類(lèi)
2.1 Integer類(lèi)的基本介紹
Integer包裝類(lèi),是通過(guò)int基本數(shù)據(jù)類(lèi)型進(jìn)行封裝得到的,可以通過(guò)查看java的API說(shuō)明文檔得到它的基本信息:
Integer包裝類(lèi)在java.lang中,這將意味著可以直接使用,不需要進(jìn)行導(dǎo)包
Integer類(lèi)被final修飾符修飾,那么這個(gè)類(lèi)不可以有子類(lèi),不能被繼承。
2.2 Integer類(lèi)的屬性
package cn.zhz.Instance; public class Test02 { public static void main(String[] args) { //屬性 System.out.println(Integer.MAX_VALUE); System.out.println(Integer.MIN_VALUE); //物極必反:超出了Int類(lèi)型的范圍 System.out.println(Integer.MAX_VALUE + 1); System.out.println(Integer.MIN_VALUE - 1); } }
2.3 Integer類(lèi)的構(gòu)造器
package cn.zhz.Instance; public class Test03 { public static void main(String[] args) { Integer i1 = new Integer(13); System.out.println(i1.toString()); Integer i2 = new Integer("12"); System.out.println(i2); } }
三、自動(dòng)裝箱和自動(dòng)拆箱
package cn.zhz.Instance; public class Test04 { public static void main(String[] args) { //自動(dòng)裝箱:int-->Integer Integer i = 12; System.out.println(i); //自動(dòng)拆箱:Integer-->int Integer i2 = new Integer(123); int num = i2; System.out.println(num); } }
四、Integer包裝類(lèi)的方法
類(lèi)型 | 方法 | 方法的說(shuō)明 | 返回值 |
int | compareTo() | 比較兩個(gè)整數(shù)對(duì)象的數(shù)值。 | 只返回三個(gè)值,要么是0 -1 1 |
boolean | equals() | 將此對(duì)象與指定對(duì)象進(jìn)行比較。 | 返回true或者是false |
int | intValue() | 以整數(shù)形式返回此整數(shù)的值。 | |
static int | parseInt() | 將輸入的String類(lèi)型的數(shù)據(jù)轉(zhuǎn)換成int類(lèi)型的數(shù)據(jù) | |
String | toString() | 返回表示此整數(shù)值的字符串對(duì)象。 |
package cn.zhz.Instance; public class Test05 { public static void main(String[] args) { //compareTo():只返回三個(gè)值,要么是0 -1 1 Integer i1 = new Integer(6); Integer i2 = new Integer(12); System.out.println(i1.compareTo(i2));//return (x < y) ? -1 ((x == y) ? 0 : 1) //equals():Integer是對(duì)object中的equals方法進(jìn)行了重寫(xiě),比較的是底層封裝的那個(gè)value的值 //Integer對(duì)象是通過(guò)new關(guān)鍵字來(lái)創(chuàng)建對(duì)象 Integer i3 = new Integer(12); Integer i4 = new Integer(12); System.out.println(i3 == i4);//false 因?yàn)?=比較的是兩個(gè)對(duì)象的地址 boolean flag = i3.equals(i4); System.out.println(flag); //Integer對(duì)象是通過(guò)自動(dòng)裝箱來(lái)完成的 Integer i5 = 12; Integer i6 = 12; System.out.println(i5.equals(i6));//true System.out.println(i5 == i6); /* * 如果自動(dòng)裝箱在-128~127之間,那么比較的就是具體的數(shù)值,否則,比較的就是對(duì)象的地址 * */ //intvalue(): Integer i7 = 130; int i = i7.intValue(); System.out.println(i); //parseInt(String s):String -->int int i8 = Integer.parseInt("12"); System.out.println(i8); //toString(): Integer i10 = 130; System.out.println(i10.toString()); } }
到此這篇關(guān)于Java基礎(chǔ)之包裝類(lèi)的文章就介紹到這了,更多相關(guān)java包裝類(lèi)內(nèi)容請(qǐng)搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!
- java 如何給對(duì)象中的包裝類(lèi)設(shè)置默認(rèn)值
- JAVA基本類(lèi)型包裝類(lèi) BigDecimal BigInteger 的使用
- Java包裝類(lèi)之自動(dòng)裝箱與拆箱
- 淺談Java包裝類(lèi)型Long的==操作引發(fā)的低級(jí)bug
- Java基礎(chǔ)之匿名內(nèi)部類(lèi)、包裝類(lèi)
- 淺析Java中為什么要設(shè)計(jì)包裝類(lèi)
- java基礎(chǔ)之包裝類(lèi)的介紹及使用
- 詳細(xì)總結(jié)Java基礎(chǔ)類(lèi)和包裝類(lèi)
- Java面向?qū)ο笾b類(lèi)的用途與實(shí)際使用
相關(guān)文章
Mybatis框架中Interceptor接口的使用說(shuō)明
這篇文章主要介紹了Mybatis框架中Interceptor接口的使用說(shuō)明,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。如有錯(cuò)誤或未考慮完全的地方,望不吝賜教2021-09-09java開(kāi)發(fā)使用BigDecimal避坑四則
這篇文章主要為大家介紹了java開(kāi)發(fā)使用BigDecimal的避坑四則,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進(jìn)步,早日升職加薪2022-07-07