0

リストが存在しない場合、新しいリストをテストして作成する方がよいでしょうか?

私はこの解決策しか見つけませんでした:

private List<List<Action>> actionList = Lists.newArrayList();

...

f(int index){
    Optional<List<Action>> optionalActionList = Optional.fromNullable(actionList.get(index));
    if (!optionalActionList.isPresent()) {
        actionList.add(new ArrayList<Action>());
    }
    actionList.get(index).add(index, new Action());
}

たぶん、ストレージの構造を変更する必要がありますか?(追加の順序。リストの先頭と末尾の両方を追加する機能。両方のリストで重要です)。必要に応じて Google Guava を使用できます。

4

2 に答える 2

0

代わりにJava7を使用していない場合

list = new ArrayList<Action>();

あなたが使用することができます

list = Lists.newArrayList();

これに静的インポートを追加すると、次のように短縮できます

list = newArrayList();
于 2012-07-08T08:44:37.413 に答える