Java Performance Tips

Java World をパラパラめくっていたら載っていたのでメモ。ちょっとした工夫で速くなるみたいです。不変オブジェクトの利用というのがちょっと意外かも。

import java.util.Collections;
import java.util.List;

public class ListNcopy {
public static void main(String[] args) {
//不変オブジェクトの空リスト作成 … 速い
List list = Collections.nCopies(10000, null);
//このままではlistは不変なので、これから
//可変オブジェクトの空リストを作成
List arrayList = new ArrayList();
arrayList.addAll(list);
//ListからListへのコピーには、コンストラクタを
//利用すると速い
List copiedList = new ArrayList(arrayList);
//配列をListへ変換するには、不変オブジェクトを
//asListメソッドで取得してからコンストラクタ利用
Integer[] iArray = new Integer[10000];
List iList = Arrays.asList(iArray);
List copiediList = new ArrayList(list);
}
}

同じカテゴリの記事: Java