テキストファイル、Webページ、キーボードからの行単位の入力、これらは文字列として扱われます。 それらの文字列の中に含まれる数字の並びを数値として扱いたい場合、文字列から数値への変換が必要です。 数値に変換することにより、演算の対象とすることができます。
Integer, Double といったラッパークラスには、 文字列から数値に変換するクラスメソッドが用意されています。
Integer.parseInt(String s) は、1,234 といった表現 (3桁ごとにカンマが入っている) に対応していません。 このような表現は世界共通ではないからです。例えばドイツではカンマは小数点を表します。
地域ごとの数値の表現方法に対応するクラスとして、NumberFormat が用意されています。 NumberFormat.getInstance() とすれば、 プログラムが動作する地域の表現方法に則した処理を行うインスタンスが生成されます。
// 数値を表す文字列 s (3桁区切り) を 数値 n (int) に変換 int n; try { Number number = NumberFormat.getInstance().parse(s); n = number.intValue(); } catch (ParseException e) { e.printStackTrace(); }