java裏int和Integer什麼區別

定義一個int變量,和Integer變量
int i;
Integer j;
使用時有什麼不一樣,什麼狀況下使用Integer型變量
Integer i=0; 
i是一個對象 

int i=3; 
i是一個基礎變量 

Integer i=0; 
這種寫法若是沒記錯,在JAVA1.5以前是會報錯的,自動的加解包是1.5的新特性 
必須寫成 
Integer i= new Integer(0); 
i.intValue()才能提取i的值

使用場合,例如說
往ArrayList裏面add,必須add的是Object
而int不是對象,就只能把Integer添加進去
int 是基本數據類型
Integer是其包裝類,注意是一個類。
爲何要提供包裝類呢???
一是爲了在各類類型間轉化,經過各類方法的調用。不然 你沒法直接經過變量轉化。
好比,如今int要轉爲String
int a=0;
String result=Integer.toString(a);
在java中包裝類,比較多的用途是用在於各類數據類型的轉化中。
我寫幾個demo

//經過包裝類來實現轉化的
		int =Integer.valueOf("12");
		int 2=Integer.parseInt("12");
		
		double 3=Double.valueOf("12.2");
		double num4=Double.parseDouble("12.2");
		//其餘的相似。經過基本數據類型的包裝來的valueOf和parse來實現String轉爲
		
		String a=String.valueOf("1234");//這裏括號中幾乎能夠是任何類型
		String b=String.valueOf(true);
		String c=new Integer(12).toString();//經過包裝類的toString()也能夠
		String d=new Double(2.3).toString();

再舉例下。好比我如今要用泛型
List<Integer> nums;
這裏<>須要類。若是你用int。它會報錯的


int 是基本類型,直接存數值java

  integer是對象,用一個引用指向這個對象spa

  1.Java 中的數據類型分爲基本數據類型和複雜數據類型code

  int 是前者>>integer 是後者(也就是一個類)orm

     Integer 是對象類型 int是原始類型 適用場合有很大的不一樣 之因此要把int封裝成Integer 型 是由於不少方法參數就只接收對象類型(Object) 還好比 範型 就只支持 對象類型對象

例如往ArrayList裏面add,必須add的是Object而int不是對象,就只能把Integer添加進去string

  2.初始化時>>it

  int i =1;io

  Integer i= new Integer(1);(要把integer 當作一個類看)class

  int 是基本數據類型(面向過程留下的痕跡,不過是對java的有益補充)容器

  Integer 是一個類,是int的擴展,定義了不少的轉換方法

  相似的還有:float Float;double Double;string String等

  舉個例子:當須要往ArrayList,HashMap中放東西時,像int,double這種內建類型是放不進去的,由於容器都是裝 object的,這是就須要這些內建類型的外覆類了。

  Java中每種內建類型都有相應的外覆類。

  Java中int和Integer關係是比較微妙的。關係以下:

  1.int是基本的數據類型;

  2.Integer是int的封裝類;

  3.int和Integer均可以表示某一個數值;

  4.int和Integer不可以互用,由於他們兩種不一樣的數據類型;

  舉例說明

  ArrayList al=new ArrayList();

  int n=40;

  Integer nI=new Integer(n);

  al.add(n);//不能夠

  al.add(nI);//能夠

 

補充

  String str = "1";
        Integer i = Integer.valueof(str);

(1)調用Integer類中的靜態方法valueOf(String)        (2)valueOf方法將傳入的參數String轉化爲int型值        (3)返回該值,若是String並非純粹由數字構成即沒法轉化爲數字,則拋出NumberFormatException..

相關文章
相關標籤/搜索