Java int與integer的對(duì)比區(qū)別
Java int與 integer區(qū)別:
int與integer的區(qū)別從大的方面來說就是基本數(shù)據(jù)類型與其包裝類的區(qū)別:
int 是基本類型,直接存數(shù)值,而integer是對(duì)象,用一個(gè)引用指向這個(gè)對(duì)象
1.Java 中的數(shù)據(jù)類型分為基本數(shù)據(jù)類型和復(fù)雜數(shù)據(jù)類型
int 是前者而integer 是后者(也就是一個(gè)類);因此在類進(jìn)行初始化時(shí)int類的變量初始為0.而Integer的變量則初始化為null.
2.初始化時(shí):
int i =1;Integer i= new Integer(1);(要把integer 當(dāng)做一個(gè)類看);但由于有了自動(dòng)裝箱和拆箱
使得對(duì)Integer類也可使用:Integer i= 1;
int 是基本數(shù)據(jù)類型(面向過程留下的痕跡,不過是對(duì)java的有益補(bǔ)充),Integer 是一個(gè)類,是int的擴(kuò)展,定義了很多的轉(zhuǎn)換方法
類似的還有:float Float;double Double;string String等,而且還提供了處理 int 類型時(shí)非常有用的其他一些常量和方法
舉個(gè)例子:當(dāng)需要往ArrayList,HashMap中放東西時(shí),像int,double這種內(nèi)建類型是放不進(jìn)去的,因?yàn)槿萜鞫际茄b object的,這是就需要這些內(nèi)建類型的外覆類了。
Java中每種內(nèi)建類型都有相應(yīng)的外覆類。
Java中int和Integer關(guān)系是比較微妙的。關(guān)系如下:
1.int是基本的數(shù)據(jù)類型;
2.Integer是int的封裝類;
3.int和Integer都可以表示某一個(gè)數(shù)值;
4.int和Integer不能夠互用,因?yàn)樗麄儍煞N不同的數(shù)據(jù)類型;
舉例說明
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類型的數(shù),只是用來進(jìn)行一些加減乘除的運(yùn)算or作為參數(shù)進(jìn)行傳遞,那么就可以直接聲明為int基本數(shù)據(jù)類型,但如果要像
對(duì)象一樣來進(jìn)行處理,那么就要用Integer來聲明一個(gè)對(duì)象,因?yàn)閖ava是面向?qū)ο蟮恼Z言,因此當(dāng)聲明為對(duì)象時(shí)能夠提供很多對(duì)象間轉(zhuǎn)換的方式,與一些常用
的方法。自認(rèn)為java作為一們面向?qū)ο蟮恼Z言,我們?cè)诼暶饕粋€(gè)變量時(shí)最好聲明為對(duì)象格式,這樣更有利于你對(duì)面向?qū)ο蟮睦斫狻?/p>
感謝閱讀,希望能幫助到大家,謝謝大家對(duì)本站的支持!
相關(guān)文章
Mabitis中的#與$符號(hào)區(qū)別及用法介紹
這篇文章主要介紹了Mabitis中的#與$符號(hào)區(qū)別,需要的朋友可以參考下2017-02-02MyBatis/mybatis-plus項(xiàng)目打印SQL的方法實(shí)現(xiàn)
SpringBoot項(xiàng)目中,經(jīng)常需要打印SQL語句及其參數(shù),本文就來介紹一下MyBatis/mybatis-plus項(xiàng)目打印SQL的方法實(shí)現(xiàn),具有一定的參考價(jià)值,感興趣的可以了解一下2024-07-07spring boot aop 記錄方法執(zhí)行時(shí)間代碼示例
這篇文章主要介紹了spring boot aop 記錄方法執(zhí)行時(shí)間代碼示例,分享了相關(guān)代碼,小編覺得還是挺不錯(cuò)的,具有一定借鑒價(jià)值,需要的朋友可以參考下2018-02-02Springboot整合Gson報(bào)錯(cuò)問題解決過程
這篇文章主要介紹了Springboot整合Gson報(bào)錯(cuò)問題解決過程,文中通過示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友可以參考下2020-06-06java實(shí)現(xiàn)解析二進(jìn)制文件的方法(字符串、圖片)
本篇文章主要介紹了java實(shí)現(xiàn)解析二進(jìn)制文件的方法(字符串、圖片),小編覺得挺不錯(cuò)的,現(xiàn)在分享給大家,也給大家做個(gè)參考。一起跟隨小編過來看看吧2017-02-02Java循環(huán)結(jié)構(gòu)之多重循環(huán)及continue?break
這篇文章主要介紹了Java循環(huán)結(jié)構(gòu)之多重循環(huán)及continue?break,文章圍繞主題展開詳細(xì)的內(nèi)容介紹,具有一定的參考價(jià)值,需要的朋友可以參考一下2022-09-09