1. 程式人生 > >Integer.parseInt() 和valueOf 的區別

Integer.parseInt() 和valueOf 的區別

今天檢視以前的find-bugs 外掛匯出的bug列表,其中有這麼一條,這個級別還是high ,既然是高級別的bug,那我得看看了

 這一條的最後定位為 valueof() 然後賦值給 int 變數,建議是什麼呢

他給出的建議是  Should call Integer.parseInt(String) instead

那到底Integer.valueOf() and Integer.parseInt() 之間什麼區別呢,

以前我就注意到這個東西,想過這個東西,但是呢,凡是問個為什麼,畢竟我 不是專家,然後到 stack overflow 看了看

http://stackoverflow.com/questions/7355024/integer-valueof-vs-integer-parseint?noredirect=1&lq=1

這裡有解說,和原來理解的一樣 parseInt 返回的是int 型別的值,而valueof 返回的是 Integer 物件, 一個是原生型別,一個是object型別。

其實我的理解為,int 是原生的佔的記憶體空間小,object 佔的空間大。而且我相信 原生型別的比較,比方說相等,大小比較等和object型別的比較都不一樣,應該相對簡單那麼一點點。

權當我胡說八道,如果我說錯了。

相關推薦

Integer.parseInt() valueOf區別

今天檢視以前的find-bugs 外掛匯出的bug列表,其中有這麼一條,這個級別還是high ,既然是高級別的bug,那我得看看了  這一條的最後定位為 valueof() 然後賦值給 int

Integer類的parseIntvalueOf區別

int() 方法 border 1.5 row ase eth div 返回結果 我們平時應該都用過或者見過parseInt和valueOf這兩個方法。一般我們是想把String類型的字符數字轉成int類型。從這個功能層面來說,這兩個方法都一樣,都可以勝任這個功能。 但是,

Java IntegerparseInt valueOf區別

進行如下測試: 1、System.out.println(127 == 127); 2、System.out.println(128 == 128); 3、System.out.println(new Integer(127) == new Integer(127)); 4

Integer.parseInt()Integer.valueOf()有什麼區別

     5)有一個靜態方法,不用建立一個物件就可以把字串轉換為值,比如:         int i = Integer.parseInt("10")&#59; 3.String 和 StringBuffer    每一個 Object 都有一個 toStrin

java學習筆記(二)parseIntvalueOf 以及字串+StringBuilder的區別

parseInt和valueOf 我們平時應該都用過或者見過parseInt和valueOf這兩個方法。一般我們是想把String型別的字元數字轉成int型別。從這個功能層面來說,這兩個方法都一樣,都可以勝任這個功能。 但是,我們進入原始碼,看下Integer類下這兩個方法 pars

java學習筆記(一)parseIntvalueOf 以及字串+StringBuilder的區別

parseInt和valueOf 我們平時應該都用過或者見過parseInt和valueOf這兩個方法。一般我們是想把String型別的字元數字轉成int型別。從這個功能層面來說,這兩個方法都一樣,都可以勝任這個功能。 但是,我們進入原始碼,看下Integer類

[轉載]Integer.parseInt()這個Integer.valueOf()的詳解

詳細解析: parseInt(String s )方法是類Integer的靜態方法,它的作用就是將形參 s 轉化為整數,比如: Interger.parseInt("1")=1; Integer.parseInt("20")=20; Integer.parseInt("324")=324; 當然,s 表示的整

Integer.valueOfInteger.parseInt區別

一、Integer.parseInt(s)用法 String s1 = "1000"; String s2 = "1000"; int n1 = Integer.parseInt(s1); int n2 = Integer.pars

Java中parseInt()valueOf(),toString()的區別

1.parseInt()就是把String型別轉化為int型別。 如 String a= "123";  int b = Integer.parseInt(a); 這樣b就等於123了。 2.Val

java中Integer.parseInt(String)與Integer.valueOf(String)區別

介面描述: valueOf() 返回一個Integer物件持有指定的原始值 parseInt() 此方法用於獲取某個字串的原始資料型別 說白了,Integer.valueOf(String)是將Str

intInteger有什麽區別

機制 microsoft val family jdk1 經歷 ont .com () 可參考:http://www.cnblogs.com/liuling/archive/2013/05/05/intAndInteger.html 從Java 5開始引入了自動裝箱/拆

Double類parseDouble()valueOf()方法的區別

數字型別的String字串轉換為浮點數通常採用parseDouble()和valueOf()方法, 兩者主要是存在以下兩點區別。區別一:引數區別Double.parseDouble(java.lang.String)的引數只能是String,如果引數改為double型別提示“The method parse

在javascript中toString valueOf區別

1、toString()方法:主要用於Array、Boolean、Date、Error、Function、Number等物件轉化為字串形式。日期類的toString()方法返回一個可讀的日期和字串。 陣列形式: 1 var array = ["CodePlayer", true, 12, -5];

JS中parseintnumber的區別

兩者定義的區別 parseInt將字串(String)型別轉為整數型別。Number() 函式把物件(Object)的值轉換為數字。 parseInt得到的結果是整數或者NaN,而Number得到的是數字(整數,小數等)或者NaN; parseInt()語法 parseInt(string, radi

深入學習java原始碼之Integer.parseInt()與Integer.valueOf()

深入學習java原始碼之Integer.parseInt()與Integer.valueOf() Integer類包裝一個物件中的原始型別int的值。 型別為Integer的物件包含一個單一欄位,其型別為int 。  此外,該類還提供了一些將int轉換為String和String轉換為

JS中toString()valueOf()的用法及兩者的區別

基本上,所有JS資料型別都擁有valueOf和toString這兩個方法,null除外。它們倆解決javascript值運算與顯示的問題。 1.用法如下: toString()方法:返回物件的字串表示。   物件 操作

Java integer.parseInt()與 integer.valueof()

integer.parseInt() (此節參考:https://www.cnblogs.com/flord/p/6056969.html) public static int parseInt(String s, int radix) 以第二個引數所指定基數將字串引數分析為一個

java中關於Integer.parseInt(),Integer.valueOf(),Ingeger.getInteger()方法的不同

今天寫java程式時將字串轉換成數字時,用了Integer.getInteger(String str),方法,結果報了空指標錯誤,後來才發現自己記錯了。特別將三個方法功能記下來。 Integer.parseInt(String str)是將有符號的十進位制整數字符串(比如

GETPOST區別總結

get 、post 、區別一、GET和POST區別的普遍看法:HTTP 定義了與服務器交互的不同方法,最常用的有4種,Get、Post、Put、Delete,如果我換一下順序就好記了,Put(增),Delete(刪),Post(改),Get(查),即增刪改查,下面簡單敘述一下:1)Get, 它用於獲取信息,註

JS中const、varlet區別

方法 pre 命令 con 使用 它的 comm 作用 影響 在JavaScript中有三種聲明變量的方式:var、let、const。 1.const 聲明創建一個只讀的常量。這不意味著常量指向的值不可變,而是變量標識符的值只能賦值一次,必須初始化。 const b