Java Zweidimensionale Tabelle erstellen?
Kann mir jemand sagen, was ich beim drucken falsch mache und wie es richtig geht?
1 Antwort
Von gutefrage auf Grund seines Wissens auf einem Fachgebiet ausgezeichneter Nutzer
Java, BlueJ, Programmieren & Softwareentwicklung
In Zeile 6 erzeugst du eine lokale Variable, die dein Feld aus Zeile 3 überdeckt. Dein Feld bekommt also nie ein Array zugewiesen, auf welches du in deiner drucke-Methode allerdings zugreifen willst.
Zeile 6 sollte so aussehen:
zahlen = new int[zahl1][zahl2];
Dann zeigt dein Feld auf ein Array, welches im Anschluss auch befüllt wird.
Voraussetzung hierbei ist natürlich, dass die multiplizeren-Methode stets zuerst ausgeführt wird. Um diese Abhängigkeit aufzulösen, wäre es besser, das Feld im Konstruktor zu definieren.
public class Zweidimension {
private int[][] zahlen;
public Zweidimension(int zahl1, int zahl2) {
zahlen = new int[zahl1][zahl2];
}
public void multiplizieren() {
/* ... */
}
public void drucke() {
/* ... */
}
}