Ⅰ java里Integer是什麼意思
這個不是關鍵字,亮猜亮是java的一個類。也就是敬寬int的包裝類。int是基本數據類型,integer是引用類型,包含兆凱很多屬性和方法,而int只是一個值,沒有其他的任何方法和屬性了
Ⅱ java Integer是引用類型么
輸出是0
Integer實際是對int類型的封裝
Ⅲ java問題:人家說Integer[]屬於引用類型數組,也叫對象數組,請問引用類型數組和對象數組的區別或者關系
Integer是對int數據類型的封裝,屬於引用數據類型!
對象:是按照「類」這個模板建立的,建立的位置陸彎則是內存
例如A是一個類。A X則是創建一個引用變數,X=NEW A()則是在內存中早兆悶建立一個對象(開辟了1片空間),對象的猜握模板就是A(可以理解為在空間里復制了A類里的變數到空間里去)。
此時就可以使用引用變數X去引用對象中的變數了
Ⅳ java中的引用數據類型是怎樣的
java中有兩種數據類型:基本類型和引用類型。x0dx0a基本類型有8個:x0dx0a 整數類型 byte、short、int、longx0dx0a 浮點數類型 float、doublex0dx0a 字元型 charx0dx0a 布爾類型 booleanx0dx0a引用類型包括三種:x0dx0a 類 Classx0dx0a 介面 Interfacex0dx0a 數組 Arrayx0dx0a基本類型是通過諸如 int a = 5; long b = 6L;的形式來定義的,稱為自動變數,自動變數存放的是字面值,不是類的實例,它存放在內存的堆棧中,數據大小和生存期必須是確定的,存取速度比較快,在堆棧中的字面值可以共享,也就是說我們定義一個int a = 5;然後又定義了一個int b = 5;這時a與b在內存中指向的是同一個字面常量。x0dx0a引用類型一般是通過new關鍵字來創建,比如Integer num = new Integer(3);它存放在內存的堆中,可以在運行時檔絕動態的分配內存大小,生存期也不必事先告訴編譯器,當引用類型變數不被使用時,Java內部的垃圾回收器GC會自動回收走。引用變數中存放的不是變數的內容,而是存放變數內容的地址。x0dx0a在參數傳遞時,基本類型都是傳值,也就是傳遞的都是原變數的值得拷貝,改變這個值不會改變原變數,而引用類型傳遞的是地址,也就是參數與原變數指向的是同一個地址,所以如果改變參數的值,原變數的值也會改變。這點型臘要注意。x0dx0a在java中,8種基本類型在java中都有對應的封裝類型,也就是引用類型:x0dx0a 整數類型 Byte、Short、Integer、Longx0dx0a 浮點數類型 Float、Doublex0dx0a 字元型 Characterx0dx0a 布爾類型 Booleanx0dx0a有時候我們會看到這樣的語句 Integer num = 3;Boolean b = true;這樣定義也能行得通,其實這裡面有一個自動裝箱的問題,即java自動把3這個字面常量封裝成了Integer對象,同理也有自動拆箱。x0dx0a還有些需要注意的比較特殊的地方:x0dx0a1.Integer類型x0dx0aInteger i1 = 3;x0dx0aInteger i2 = 3;x0dx0a此時i1 == i2 返回的是truex0dx0aInteger i1 = 128;x0dx0aInteger i2 = 128;x0dx0a此時i1 == i2返回的是false,x0dx0a這時因為Integer的數值在-128~127之間時,即在int的范圍內,默認是按照基本類型int來存放的,仍舊存在堆棧中,如果超出了int的范圍,就按照對象的方式來存放和比較了。x0dx0a x0dx0a2、String類型x0dx0aString類型我們有時候也會直接這樣定義:x0dx0aString s = "abc";x0dx0a這里的"abc"稱為字元串常量,也是存在堆棧中的,s中存放的就是指向這個堆棧地址的引用,如果再定義一個x0dx0aString s1 = "abc";x0dx0a這時,s與s1存放的是同一個地址的引用,即s與s1指向的是同一個字元串常量,x0dx0as == s1的值是true,x0dx0a但是如果有x0dx0aString s2 = new String("abc");x0dx0a這時s == s2則為false,因為使用new之後,每次生成的對象都不是同一個,即使存儲的內容相同。x0dx0a上面的s == s1,s == s2其實比較的都是地址,並不是裡面的內容。如果要比較內容,可以使用equals()方法。x0dx0ax0dx0a其他的就不多說了,打起來太慢了卜蠢滑,可以自己去看一下java編程思想。
Ⅳ Java的基本類型和引用類型 int與Integer
int
是基本數據類型
integer是個泛型,它是一個封裝類,裡面封裝的就是int這種基本數據類型。目地就是為了可以把這個創建它的對象。
通俗點說:int就是一個茅坑,但現在它是露天的,那試問誰敢再它的上面運行拉屎這種方法。而integer就是給在這個茅坑上起了個房子,把這個茅坑封裝起來變成了廁所,這樣你才能在裡面拉屎。
Ⅵ java中 Integer是什麼意思
int與integer的區別從大的方面來說就是基本數據類型與其包裝類的區別:
int 是基本類型,直接存數值,而integer是對象,用一個引用指向這個對象
1.Java 中的數據類型分為基本數據類型和復雜數據類型
int 是前者而integer 是後者(也就是一個類);因此在類進行初始化時int類的變數初始為0.而Integer的變數則初始化為null.
2.初始化時:
int i =1;Integer i= new Integer(1);(要把integer 當做一個類看);但旦高由於有了自動裝箱和拆箱
使得對Integer類也可使用:Integer i= 1;
int 是基本數據類型(面向過程留下的痕跡,不過是對java的有益補充),Integer 是一個類,是int的擴展,定義了很多的轉換方法
類似的還有:float Float;double Double;string String等帶褲,而且還提供了處理 int 類型時非常有用的其他一些常量和方法
舉個例子:當需要往ArrayList,HashMap中放東西時,像int,double這種內建類型是放不進去的,因為容器都是裝object的,這是就需要這些內建類型的外覆類了。
Java中每種內建類型都有相應的外覆類。
Java中int和Integer關系是比較微妙的。關系如下:
1.int是基本的數據類型;
2.Integer是int的封裝類;
3.int和Integer都可以表示某一個數值;
4.int和Integer不能夠互用,因為他們兩種不同的數據類型;
舉例說明
private void test(Integer iAge){
int age=iAge;
}
test(null);//將會導致空指針異常
並且泛型定義時也不支持int: 如:List list = new ArrayList();可以 而List list = new ArrayList();則不行
總而言之:如果我們定義一個int類型的數,只是用來進行一些加減乘除的運算or作為參數進行傳遞,那麼就可以直接聲明為int基本數據類型,但如果要像
對象一樣來進行處理,那麼就要用Integer來聲明一個對象,因為java是面向對象的語言,因此當聲明為對象時能夠提供很多模行尺對象間轉換的方式,與一些常用
的方法。自認為java作為一們面向對象的語言,我們在聲明一個變數時最好聲明為對象格式,這樣更有利於你對面向對象的理解。