# Zweidimensionales Array - dynamisch



## Guest (16. Dez 2008)

Hallo,

es ist ja möglich eine ArrayList zu nutzen, wenn ich ein dynamisch wachsendes Array nutze, d.h. die Größe nicht vorher festlegen will, wie bei einem normalen Array.

Gibt es etwas ähnliches für eine zweidimensionale Struktur?

also alle String[][] data nur halt ebenfalls nicht von vornherein fix, wie bei einem normalen Array, sondern 

ich will dann data dynamisch Werte zuweisen können, z.B. data_[j] wobei vorher halt nicht klar ist, wieviele Elemente reinkommen. Ich suche sozusagen eine zweidimensionale ArrayList _


----------



## maki (16. Dez 2008)

Wie wäre es mit einer ArraList welche ArrayLists enthält?

Wobei es bestimmt auch schönere Datenstrukturen gäbe die man empfehlen könnte, wenn du uns dein Vorhaben geschildert hättest.


----------



## FArt (16. Dez 2008)

Es gibt verschiedene Möglichkeiten eine Matrix zu implementieren.
Auf die Bedürfnisse kommt es an... eine Diagonalmatrix oder eine spärlich besetzte Matrix würde ich anders implementieren als eine allgemeine Matrix.

Für alle gilt: baue dir eine Implementierung mit einem passenden Interface für den komfortablen Zugriff à la set(x, y, value) usw. oder suche mal mit Google nach was fertigem...


----------



## ARadauer (16. Dez 2008)

```
package main.java;

import java.util.HashMap;

public class Matrix {
	HashMap<Integer, HashMap<Integer, String>> data = new HashMap<Integer, HashMap<Integer,String>>();
	
	
	public void put(int x, int y, String value){
		HashMap<Integer,String> m = data.get(x);
		if(m==null)
			m = new HashMap<Integer,String>();
		m.put(y, value);
		data.put(x, m);
	}
	
	public String get(int x, int y){
		HashMap<Integer,String> m  =data.get(x);
		if(m==null)
			return null;
		return m.get(y);
	}
	
	public static void main(String[] args) {
		Matrix m = new Matrix();
		m.put(2, 2, "Test 2 2");
		
		m.put(5, 3, "Test 5 3");
		
		System.out.println(m.get(5,3));
		System.out.println(m.get(2,2));
		
	}

}
```

sowas vielleicht....


----------



## FArt (16. Dez 2008)

ARadauer hat gesagt.:
			
		

> sowas vielleicht....


Wir wussten, dass du es kapiert hast, aber Bier kriegst du keines dafür... *FG*


----------

