Objektarray inerhalb des Konstruktors erstellen

Status
Nicht offen für weitere Antworten.
G

Guest

Gast
Hallo,
Ich hätte mal eine Frage. ???:L
Wie kann ich denn in einem constructor objektarrays oder generell "neue" werte berechnen lassen?
Also hier ist mal mein code, und ich will halt, dass das zellen array quasi mit dem neuen Feld mit konstruiert wird.
Code:
	private int hoehe;
	private int breite;
	
	int zellcounter =0;
	int anzahlFelder= hoehe*breite;
	 Random einsOderZwei = new Random();
	
	public Feld(int hoehe, int breite){
		this.hoehe = hoehe;
		this.breite = breite;
		Zelle[] zellen = new Zelle[anzahlFelder];
		// befüllen der Zellen
		for(int i =1; i<=hoehe; i++){
			for(int j =1; j<= breite;j++){
				if(einsOderZwei.nextInt(2)== 0){
					zellen[zellcounter] = new Zelle(breite,hoehe,WEISS);
					zellcounter++;
				}//end if
				else{
					zellen[zellcounter] = new Zelle(breite,hoehe,SCHWARZ);
					zellcounter++;
				}// end else
			}// end innere for schleife
		}// end äußere for schleife
	}// end constuctor

Also im Endeffekt will ich auf die Zellenzugreifen können, bzw. auf die Farbe inerhalb der Zellen. Mit dem obigen Code gehts halt noch ned und ich bin grad bissl clueless :((
 
S

SlaterB

Gast
> ich will halt, dass das zellen array quasi mit dem neuen Feld mit konstruiert wird

scheint mit
> Zelle[] zellen = new Zelle[anzahlFelder];
gut zu klappen?


> Also im Endeffekt will ich auf die Zellenzugreifen können, bzw. auf die Farbe inerhalb der Zellen. Mit dem obigen Code gehts halt noch ned

beschreibe das näher,
du hast ein Array erstellt, schreibst was rein, kannst genausogut was rauslesen,
was genau klappt denn nun nicht?


einen Fehler sehe ich gerade noch:
die Variable anzahl wird mit hoehe*breite = 0 initialisiert,
weil hoehe und breite zu dem Zeitpunkt 0 sind,
im Konstruktor setzt du dann hoehe und breite auf sicherlich höhere Werte, aber anzahlFelder ist immer noch 0!,
der Befehl
anzahlFelder= hoehe*breite;
muss in den Konstruktor, wenn hoehe und breite da sind
 
G

Guest

Gast
Also ich hab den Fehler jetzt gefunden.
Ich hatte das Zellenarray ned als attribut vor den Konstruktor geschrieben sondern erst im Konstruktor initialisiert.
Hab das array jetzt auch 2 dimensional gemacht.
Etwas früh nach hilfe geschrien :oops: .
Aber dennoch danke für die Hilfe :)))))
 
Status
Nicht offen für weitere Antworten.
Ähnliche Java Themen
  Titel Forum Antworten Datum
H Objektarray - Speicherverschwendung? Java Basics - Anfänger-Themen 5
S Methoden Objektarray(erfassen) Java Basics - Anfänger-Themen 18
dapzoo Compiler-Fehler Beim Werte verteilen in Objektarray NullPointerException Java Basics - Anfänger-Themen 4
B Objekte in ObjektArray speichern und ausgeben Java Basics - Anfänger-Themen 5
M Objektarray Ausgabe Java Basics - Anfänger-Themen 8
w0ddes ImageIcon in Objektarray (TableModel) einfügen. Java Basics - Anfänger-Themen 7
D Objektarray sortieren Java Basics - Anfänger-Themen 10
G Objektarray mit sich selbst rekombinieren Java Basics - Anfänger-Themen 5
B In einem JPanel zeichnen (Problem inerhalb eines Spieles) Java Basics - Anfänger-Themen 4
F Auf Variablen eines Konstruktors zugreifen Java Basics - Anfänger-Themen 4
O Vererbung änderung des Konstruktors Java Basics - Anfänger-Themen 8
G Objekt der selben Klasse wie selbst mit Aufrufen des Konstruktors erzeugen Java Basics - Anfänger-Themen 14
J Klassen Fehler mit Parameter des Konstruktors bei einer Objekterzeugung Java Basics - Anfänger-Themen 5
T Vererbung eines Konstruktors - Special Edition Java Basics - Anfänger-Themen 6
A Klassen Sinn des Konstruktors Java Basics - Anfänger-Themen 12
J Aufruf des Konstruktors Java Basics - Anfänger-Themen 10
K Im Konstruktor: aufruf eines anderen Konstruktors Java Basics - Anfänger-Themen 7

Ähnliche Java Themen

Neue Themen


Oben