# List<String[]> initialisieren



## dicke_nudel (11. Okt 2010)

```
List<String[]>newTable1= new List<String[]>();
```

Warum kann ich so nicht initialisieren. Was mache ich falsch?


```
Cannot instantiate the type List<String[]>
```

Danke


----------



## faetzminator (11. Okt 2010)

[c]List[/c] ist nur ein Interface. Du musst eine Implementation davon verwenden, z.B. [c]ArrayList[/c] oder [c]LinkedList[/c]. --> [c]List<String[]>newTable1= new ArrayList<String[]>();[/c]

PS: Warum verwendest du Arrays? Sind sehr unschön in Java...


----------



## eRaaaa (11. Okt 2010)

dicke_nudel hat gesagt.:


> ```
> List<String[]>newTable1= new List<String[]>();
> ```
> 
> ...




List ist nur ein Interface, du musst schon eine konkrete Implementierung nutzen.
--> List (Java Platform SE 6)

```
All Known Implementing Classes: 
AbstractList, AbstractSequentialList, ArrayList, AttributeList, CopyOnWriteArrayList, LinkedList, RoleList, RoleUnresolvedList, Stack, Vector
```


----------



## Haave (11. Okt 2010)

Ich denke, es liegt daran, dass List ein Interface ist. List wird aber z.B. von java.util.ArrayList implementiert, von ArrayList kannst du also Instanzen erzeugen.

EDIT:
Und mal wieder drei, die gleichzeitig das gleiche schreiben xD

… ich korrigiere: 4!


----------



## XHelp (11. Okt 2010)

Weil "List" ein Interface ist. Das kannst du nicht instanziieren. Musst dich also für eine Implementierung entscheiden, z.B.:

```
List<String[]>newTable1= new ArrayList<String[]>();
```


----------

