タイトルについてTwitterで以前に同じようなことをツイートしましたが、まとめておこうということで。 ちなみに調べたのはSun JDK 1.6.21です。 結論から言うとIntegerとBigDecimalのインスタンスを取得する時はnewではなくvaluesOfを使おう!ってことです。 Integer i = new Integer(10); BigDecimal b = new BigDecimal(10); ではなく Integer i = Integer.valueOf(10); BigDecimal b = BigDecimal.valueOf(10); 1.Integer Integerのコンストラクタの実装を見ると次の感じ。 public Integer(int value) { this.value = value; } で、valueOfを見ると次の実装。 public