2009-05-02 9 views
0

デュープ:Java Generics Syntax for arraysアレイの問題を作成しています。助けてください

私は整数型のリンクリストを保持する配列を作成したい。..

import java.util.LinkedList; 

public class Test { 

    public static void main(String [] args){ 

     LinkedList<Integer> [] buckets = new LinkedList<Integer>[10];  

    } 
} 

私はエラーが言ってます: は作成できませんLinkedListの汎用配列

なぜですか?それは解決することができますか?

答えて

4

ジェネリックとあなたの古い配列はうまくいきません(この件名はここで、そして他の場所で死ぬまでにされています)。リストの(配列)リストを使用します。 Javaはあなただけドロップすることができます与えられた配列にジェネリックを許可しない理由

ArrayList<LinkedList<Integer>> buckets = new ArrayList<LinkedList<Integer>>(); 
+0

+1 'ye olde'の場合 – bedwyr

2

あなたは例えば、別のリストの種類とそれを包むことができ

1

私にはわからない

List<Integer> [] buckets = new LinkedList[10]; 

を試してみてください。

+0

その配列は元に戻って(恒常的な動作)、ジェネリックはコンパイル時にタイプ消去を使用するため – Schildmeijer

+0

コンパイルがジェネリック型のマッチをチェックできないのはなぜですか?そうでなければ、それが存在しないかのように扱います。 –

関連する問題