Java int與integer的對(duì)比區(qū)別
Java int與 integer區(qū)別:
int與integer的區(qū)別從大的方面來(lái)說(shuō)就是基本數(shù)據(jù)類(lèi)型與其包裝類(lèi)的區(qū)別:
int 是基本類(lèi)型,直接存數(shù)值,而integer是對(duì)象,用一個(gè)引用指向這個(gè)對(duì)象
1.Java 中的數(shù)據(jù)類(lèi)型分為基本數(shù)據(jù)類(lèi)型和復(fù)雜數(shù)據(jù)類(lèi)型
int 是前者而integer 是后者(也就是一個(gè)類(lèi));因此在類(lèi)進(jìn)行初始化時(shí)int類(lèi)的變量初始為0.而Integer的變量則初始化為null.
2.初始化時(shí):
int i =1;Integer i= new Integer(1);(要把integer 當(dāng)做一個(gè)類(lèi)看);但由于有了自動(dòng)裝箱和拆箱
使得對(duì)Integer類(lèi)也可使用:Integer i= 1;
int 是基本數(shù)據(jù)類(lèi)型(面向過(guò)程留下的痕跡,不過(guò)是對(duì)java的有益補(bǔ)充),Integer 是一個(gè)類(lèi),是int的擴(kuò)展,定義了很多的轉(zhuǎn)換方法
類(lèi)似的還有:float Float;double Double;string String等,而且還提供了處理 int 類(lèi)型時(shí)非常有用的其他一些常量和方法
舉個(gè)例子:當(dāng)需要往ArrayList,HashMap中放東西時(shí),像int,double這種內(nèi)建類(lèi)型是放不進(jìn)去的,因?yàn)槿萜鞫际茄b object的,這是就需要這些內(nèi)建類(lèi)型的外覆類(lèi)了。
Java中每種內(nèi)建類(lèi)型都有相應(yīng)的外覆類(lèi)。
Java中int和Integer關(guān)系是比較微妙的。關(guān)系如下:
1.int是基本的數(shù)據(jù)類(lèi)型;
2.Integer是int的封裝類(lèi);
3.int和Integer都可以表示某一個(gè)數(shù)值;
4.int和Integer不能夠互用,因?yàn)樗麄儍煞N不同的數(shù)據(jù)類(lèi)型;
舉例說(shuō)明
ArrayList al=new ArrayList(); int n=40; Integer nI=new Integer(n); al.add(n);//不可以 al.add(nI);//可以
并且泛型定義時(shí)也不支持int: 如:List<Integer> list = new ArrayList<Integer>();可以 而List<int> list = new ArrayList<int>();則不行
總而言之:如果我們定義一個(gè)int類(lèi)型的數(shù),只是用來(lái)進(jìn)行一些加減乘除的運(yùn)算or作為參數(shù)進(jìn)行傳遞,那么就可以直接聲明為int基本數(shù)據(jù)類(lèi)型,但如果要像
對(duì)象一樣來(lái)進(jìn)行處理,那么就要用Integer來(lái)聲明一個(gè)對(duì)象,因?yàn)閖ava是面向?qū)ο蟮恼Z(yǔ)言,因此當(dāng)聲明為對(duì)象時(shí)能夠提供很多對(duì)象間轉(zhuǎn)換的方式,與一些常用
的方法。自認(rèn)為java作為一們面向?qū)ο蟮恼Z(yǔ)言,我們?cè)诼暶饕粋€(gè)變量時(shí)最好聲明為對(duì)象格式,這樣更有利于你對(duì)面向?qū)ο蟮睦斫狻?/p>
感謝閱讀,希望能幫助到大家,謝謝大家對(duì)本站的支持!
- Java中關(guān)于int和Integer的區(qū)別詳解
- Java中int和Integer的區(qū)別
- 詳解Java中int和Integer的區(qū)別
- Java中int與integer的區(qū)別(基本數(shù)據(jù)類(lèi)型與引用數(shù)據(jù)類(lèi)型)
- Java中Integer和int的區(qū)別解讀
- 通過(guò)實(shí)例了解Java Integer類(lèi)和int的區(qū)別
- Java數(shù)據(jù)類(lèi)型Integer與int的區(qū)別詳細(xì)解析
- 簡(jiǎn)單了解java中int和Integer的區(qū)別
- Java中int與Integer的區(qū)別詳解及常見(jiàn)問(wèn)題解決
相關(guān)文章
Java設(shè)計(jì)模式之工廠(chǎng)方法模式實(shí)例簡(jiǎn)析
這篇文章主要介紹了Java設(shè)計(jì)模式之工廠(chǎng)方法模式,較為詳細(xì)的分析了Java工廠(chǎng)模式的功能、定義并給出了實(shí)例代碼加以總結(jié)分析,需要的朋友可以參考下2015-11-11
一次 Java 內(nèi)存泄漏的排查解決過(guò)程詳解
這篇文章主要介紹了一次 Java 內(nèi)存泄漏的排查過(guò)程詳解,文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友可以參考下2019-07-07
如何在IDEA Maven項(xiàng)目中導(dǎo)入本地jar包的步驟
今天小編就為大家分享一篇關(guān)于IDEA Maven項(xiàng)目中導(dǎo)入本地jar包的步驟,小編覺(jué)得內(nèi)容挺不錯(cuò)的,現(xiàn)在分享給大家,具有很好的參考價(jià)值,需要的朋友一起跟隨小編來(lái)看看吧2018-12-12
Java位運(yùn)算和邏輯運(yùn)算的區(qū)別實(shí)例
Java位運(yùn)算和邏輯運(yùn)算的區(qū)別實(shí)例,請(qǐng)參考下面代碼,希望對(duì)你有所幫助2013-02-02
JAVA實(shí)現(xiàn)基于Tcp協(xié)議的簡(jiǎn)單Socket通信實(shí)例
本篇文章主要介紹了JAVA實(shí)現(xiàn)基于Tcp協(xié)議的簡(jiǎn)單Socket通信實(shí)例,小編覺(jué)得挺不錯(cuò)的,現(xiàn)在分享給大家,也給大家做個(gè)參考。一起跟隨小編過(guò)來(lái)看看吧2017-01-01
基于ScheduledExecutorService的兩種方法(詳解)
下面小編就為大家?guī)?lái)一篇基于ScheduledExecutorService的兩種方法(詳解)。小編覺(jué)得挺不錯(cuò)的,現(xiàn)在就分享給大家,也給大家做個(gè)參考。一起跟隨小編過(guò)來(lái)看看吧2017-10-10
spring 定時(shí)任務(wù)@Scheduled詳解
這篇文章主要介紹了spring 定時(shí)任務(wù)@Scheduled的相關(guān)資料,文中通過(guò)示例代碼介紹的很詳細(xì),相信對(duì)大家的理解和學(xué)習(xí)具有一定的參考借鑒價(jià)值,有需要的朋友們下面來(lái)一起看看吧。2017-01-01

