String.concat vs StringBuffer.append vs StringBuilder.append
http://www5.airnet.ne.jp/sakuraba/java/laboratory/J2SE1.5/TinyTips/StringBuilder/StringBuilder.html
でも言及されているのですが、まあ、データがいくつもあっても良いだろうということで、実験結果を公開してみます。ひたすら"a"という文字列を指定回数結合するプログラムで実験しました。結果は3回計った平均です。
■マシンスペック
単位[millisec]
件数 | String | StringBuffer | StringBuilder |
---|---|---|---|
1,000 | 62 | 0 | 0 |
10,000 | 485 | 11 | 5 |
100,000 | - | 63 | 32 |
1,000,000 | - | 250 | 162 |
10,000,000 | - | 1344 | 1131 |
100,000,000は、OutOfMemoryErrorで計測できず。
まあ、大体虎の穴と同様の結果が出ました。でも、マストって感じではないですね。全く新しくJSE5で作る場合のみ使うという程度のものではないでしょうか。