java Matrix als klasse (array)?

... komplette Frage anzeigen

3 Antworten

Das was du machst: Du erstellst eine Klasse mit dem Namen Matrix. Im Konstruktor der Klasse Matrix erstellst du eine zweidimensionale Array als lokale Variable, die nicht weiter verwendet wird.

Anschließend Rufst du den Konstruktor deiner Matrix Klasse in der Main Methode auf. Und das ist bereits der Denkfehler: Dadurch dass sich die lokale Variable im Konstruktor befindet, wird nicht die gleich die ganze Klasse zu einer zweidimensionalen Array.

Wenn deine Klasse eine zweidimensionale Array 'kreieren' soll, bist du garnicht so weit weg von der Lösung.

Deklariere eine zweidimensionale Array als Instanz-Variable.

Im Konstruktor weist du dieser Instanz-Variable dann deine neue Array zu (mit Anzahl Zeilen und Spalten).

Anschließend nimmst du noch einen Getter der dir die zweidimensionale Array zurück liefert.

Antwort bewerten Vielen Dank für Deine Bewertung
Kommentar von leonardomessi
10.12.2015, 20:00

Instanz-Variable? Könntest du das bitte etwas erläutern.

Und was ist ein Getter?

0

Erstmal sehe ich einige Fehler. Wenn die Methode "Matrix" einen Wert zurückgeben soll, musst du das deklarieren. Außerdem fehlt dann entsprechend der return und ich vermute, dass du die Methode als "static" angeben musst.

"System.out.println(marray);"

Dort versuchst du eine Methode aufzurufen, ohne die Parameterangabe. Oder aber dir fehlen Anführungsstriche.

"Matrix(){}"

Was versuchst du da?

Antwort bewerten Vielen Dank für Deine Bewertung
for (int i=0; i<3; i++){
   
System.out.println(marray);
}

Warum gibts du 3 mal das gleiche aus (nämlich den Namen des Objekts marray)?

Antwort bewerten Vielen Dank für Deine Bewertung
Kommentar von leonardomessi
10.12.2015, 19:19

überreste vom test gewesen.

0
Kommentar von Etter
10.12.2015, 20:09

"nämlich den Namen des Objekts marray"

Ich bin mir sicher, dass man mit Aufruf einer Methode innerhalb einer Konsolenausgabe nicht den Namen ausgibt (außer vll. man würde das in Anführungsstriche fassen).

Auch wenn ich sagen muss, dass da ein Haufen Fehler im Quellcode ist (da fehlt z.B. die Parameterübergabe oder wenn es "marray" ausgeben soll, dann fehlen die Anführungsstriche).

0

Was möchtest Du wissen?