JavajavaのArrayListのコンストラクタにはオーバーロードで幾つかの種類がありますが、その一つに以下のようなものがあります。initialCapacity)指定された初期サイズで空のリストを作成します。ArrayListArrayListは動的に容量を確保しますが、そのメモリ割り当て処理はCPUにそれなりの負荷を与えます。そこで、予め格納する容量が分かっていればコンストラクタの引数で初期容量を指定することで、その負荷の掛かる処理を事前に省くことが出来、その結果、処理時間の短縮につながります。initialCapacityの容量の単位はコレクションの要素数です(2008/3/7修正)。以下に初期容量を指定したときとしないときのでの処理時間を計るJavaのソースコードを示します。{System.out.println(mlist.get(i));}*/}}入力ファイルは日本語単語405,000語で4898304Byteです。場合:8msとなり、今回の場合は処理時間を1/2に短縮できていることが分かりました。ちなみに、ArrayListのメモリ動的割り当て容量は、現在の容量の1.5倍のようです。クラス追記(2008/3/7):1.コンストラクタでインスタンス容量を指定するものとして、StringBufferクラスがあります。40KByteを確保のように指定します。これによって、append()やinsert()によって予め割り当てられたバッファを越す際に呼び出されるメモリ動的割り当て処理を軽減することが出来ます。2.ArrayListのコンストラクタに引数を指定しない場合は10個の要素を持った配列が作られます。yukun関連記事java.lang.OutOfMemoryErrorが発生する原因とその解決法の一例JVMがGCを行えるように、開放するインスタンスへの参照を切っていたのだけれど、なぜか例外が投げられ続けていました。Servletで処理した結果をJSPファイルに転送し、HTMLを生成する。これによって、MVCモデルにおけるViewの分離ができる。今回はN-gramでテキストを分解します。N-gram法とは対象の文字列を一定のN文字単位で分解し、それの出現頻度を求める方法です。統合開発環境のEclipseでJavaのオセロプログラム(講義の課題)を制作中に一度クラス図を作成しようと試みました。System.inとInputStreamReaderクラスコマンドプロンプトからキーボード(標準)入力を取得するプログラムです。(1)入力文の末尾に文字列を追加さて、最初は単純にユーザの入力文の末尾に予め定義されている文字列を付け足して応答するだけのものです。コメントをキャンセルメールアドレスが公開されることはありません。