versuchen, füllen Sie ein 2D-array von Benutzer-Eingabe, wie es zu tun?
erstelle ich ein code, dass der Benutzer seine Eingabe ein 2D-array, aber es hat nicht funktioniert, wie es sollte, weiß ich nicht, wo ist das problem, wenn jemand kann mir helfen, ich werde das zu schätzen wissen.
dieses mein code :
package test7;
import java.util.Scanner;
public class test7 {
private int row = 4;
private int col = 4;
private int[][] matrix;
public test7(int trow, int tcol) {
this.row = trow;
this.col = tcol;
}
public test7(int trow, int tcol, int[][] m) {
this.row = trow;
this.col = tcol;
this.matrix = m;
}
public int[][] fill(){
int[][] data = new int[row][col];
Scanner in = new Scanner(System.in);
for(int row = 0; row< matrix.length; row++){
for(int col = 0 ;col< matrix[row].length; col++){
System.out.println("enter the elementss for the Matrix");
data[row][col] = in.nextInt();
}
System.out.println();
}
return data;
}
public static void main(String[] args){
int[][] ma = new int[3][2];
test7 q2 = new test7(3, 2,ma);
q2.fill();
}
}
der Ausgabe:
enter the elementss for the Matrix
4
enter the elementss for the Matrix
3
enter the elementss for the Matrix
5
enter the elementss for the Matrix
8
enter the elementss for the Matrix
9
enter the elementss for the Matrix
0
die Ausgabe sollte genau so Aussehen:
1 2
3 4
5 6
- Ihre
fill
Methode hat keine Füllung. - wie es nicht ausfüllen ?? ich dachte, dass ich mich unter den Benutzer-input und Hinzugefügt, um das 2d-array mit der for-Schleife... ist das nicht dieses Recht?
- Die Linie speziell, glaubst du, ist das hinzufügen von Werten in das array?
- nun änderte ich den code innerhalb der for-Schleife, aber jetzt Sie anzeigen und Fehler
- dev, sein spezifischen, welcher Fehler wird angezeigt, wie genau Sie verändert den code?
- ich Bearbeiten meine Frage, und geben Sie die geänderte code und die Ausgabe-Fehler.
- aktualisiert die Antwort!
- Sie dint meine Antwort richtig. Ich habe aktualisiert die Antwort mit dem vollständigen ausfüllen-Funktion, so dass es keine Verwirrung gibt
Du musst angemeldet sein, um einen Kommentar abzugeben.
Waren Sie deklarieren von array-Länge
Dies ist der Grund, warum der Fehler ist. Ändern Sie die Anweisung oben angegebenen code.
UPDATE
}
Dadurch erhalten Sie die gewünschte Ausgabe , fügen Sie es zu füllen - Methode, bevor die zurück Anweisung
Versuchen Sie dies:
Ersetzen Sie Ihre fill () - Methode zu dieser
Grund:
Ihre aktuelle
fill()
Methode ist nicht speichern die Werte in das arraySie müssen die Anzeige dieser Zeile
mit
sind Sie nur die Eingabe der Daten wieder und wieder auf die
int
variablex
Update
ändern Sie diese
zu diesem