日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當(dāng)前位置: 首頁(yè) > 编程资源 > 编程问答 >内容正文

编程问答

java int == integer_java int与integer的区别

發(fā)布時(shí)間:2025/4/5 编程问答 33 豆豆
生活随笔 收集整理的這篇文章主要介紹了 java int == integer_java int与integer的区别 小編覺得挺不錯(cuò)的,現(xiàn)在分享給大家,幫大家做個(gè)參考.

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)裝箱和拆箱   (http://ycgit.blog.51cto.com/8590215/1637992),

使得對(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 list = new ArrayList();可以? 而List list = new ArrayList();則不行

總而言之:如果我們定義一個(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(yǔ)言,因此當(dāng)聲明為對(duì)象時(shí)能夠提供很多對(duì)象間轉(zhuǎn)換的方式,與一些常用

的方法。自認(rèn)為java作為一們面向?qū)ο蟮恼Z(yǔ)言,我們?cè)诼暶饕粋€(gè)變量時(shí)最好聲明為對(duì)象格式,這樣更有利于你對(duì)面向?qū)ο蟮睦斫狻?/p>

Java ? 提供兩種不同的類型:引用類型和原始類型(或內(nèi)置類型)。Int是java的原始數(shù)據(jù)類型,Integer是java為int提供的封裝類。Java為每個(gè)原始類型提供了封裝類。

原始類型 ? ? ? ? ? 封裝類

boolean ? ? ? ? ? ? Boolean

char ? ? ? ? ? ? ? ? ? Character

byte ? ? ? ? ? ? ? ? ? Byte

short ? ? ? ? ? ? ? ? Short

int ? ? ? ? ? ? ? ? ? ? Integer

long ? ? ? ? ? ? ? ? ? Long

float ? ? ? ? ? ? ? ? Float

double ? ? ? ? ? ? ? Double

引用類型和原始類型的行為完全不同,并且它們具有不同的語(yǔ)義。引用類型和原始類型具有不同的特征和用法,它們包括:大小和速度問題,這種類型以哪種類型的數(shù)據(jù)結(jié)構(gòu)存儲(chǔ),當(dāng)引用類型和原始類型用作某個(gè)類的實(shí)例數(shù)據(jù)時(shí)所指定的缺省值。對(duì)象引用實(shí)例變量的缺省值為 ? null,而原始類型實(shí)例變量的缺省值與它們的類型有關(guān)。

int ? 一般做為數(shù)值參數(shù)就夠了

integer ? 一般做類型轉(zhuǎn)換的時(shí)候用的較多

總結(jié)

以上是生活随笔為你收集整理的java int == integer_java int与integer的区别的全部?jī)?nèi)容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網(wǎng)站內(nèi)容還不錯(cuò),歡迎將生活随笔推薦給好友。