Integer.valueOf() と Integer.parseInt() [重複] 質問する

Integer.valueOf() と Integer.parseInt() [重複] 質問する

Integer.parseInt()マイナス記号の処理(ドキュメントに記載されているとおり)以外に、Integer.valueOf()と の間には何か違いがありますかInteger.parseInt()?

そして、どちら, 小数点 千単位の区切り記号 ( を生成NumberFormatException) を実行するための Java メソッドはすでに存在しますか?

ベストアンサー1

実際には、内部的にvalueOf使用しますparseInt。違いは、プリミティブを返すのに対し、オブジェクトを返すことですparseInt。Integer.classソースintから考えてみましょう。valueOfInteger

public static int parseInt(String s) throws NumberFormatException {
    return parseInt(s, 10);
}

public static Integer valueOf(String s, int radix) throws NumberFormatException {
    return Integer.valueOf(parseInt(s, radix));
}

public static Integer valueOf(String s) throws NumberFormatException {
    return Integer.valueOf(parseInt(s, 10));
}

カンマを使った解析については、私はよく知りません。カンマをサニタイズします。

int million = Integer.parseInt("1,000,000".replace(",", ""));

おすすめ記事