The HIRO Says

If you smell what The HIRO is cooking!!!

long と Long のパフォーマンス差を調べてみた

primitive 型よりも boxed primitives(primitive のオブジェクト型)の方がパフォーマンスが落ちるということなので、簡単なプログラムで調べてみました。
今回調べたのは、ひとまず実行時間だけです。

環境

OS Windows XP Home Edition Version 2002 SP3
CPU Intel Core2 Duo T8300 (2.4 GHz)
メモリ 3.75 GB (2.39 GHz)
JDK 1.6.0_10

プログラム

for 文を1千万回ループさせ、そのインデックスをインクリメントするもの。
こんな感じ

    for (int i = 0; i < 10000000; i++) {
        // l が long/Long
        l += i;
    }

調査結果

  1. l が long の場合:15ms
  2. l が Long の場合:150 〜 240ms

ループが1千万回位になると、10倍位の差が出ました。


今度 NetBeans を導入して、メモリ使用量なども調べてみたいと思います。