所以首先,如果我要求你做我的功课时出现这种情况,对不起,只是我你不是,这个问题只涉及到一个小小的方面正在制作的整个程序...换句话说,这是不完成的。如何在循环中列出多维数组值
我会问我的老师,但它的在线课程。所以我会问我的朋友们的建议,但我是学校参加计算机科学课程的唯一孩子。 (这是一所小学校)
反正这个程序完成后,会让老师输入一个学生名单,每个学生四个年级。最后,我会添加一些代码,让老师找到每个学生的平均等等等。
但是目前我只在上市学生的过程中。哪里出现小问题...
每次我列出一个学生(他们的姓氏和名字)以及四个考试成绩,都会很好地输出。然而,当我输出第二名学生的名字不同而且考试成绩不同时,会输出不同的名字......但是前一名学生的考试成绩。
Ex。
约翰·史密斯:67 68 57 87
李四:67 68 57 87(即使它应该李四:54 68 75 91)
而且很显然这是一个问题......因为所有学生没有完全相同的成绩......曾经..
下面好的代码...
public class StudentGradesView extends FrameView {
int [][] aryStudent = new int [15][4]; //[15] being number of students and [4] being test scores...
String[] studentNames = new String[15]; // I'm thinking this is might unnecessary now...but we'll see
int numOfStudents = 0; //starting number of students at 0....
int marks = 0;
int test1;
int test2;
int test3;
int test4;
public StudentGradesView(SingleFrameApplication app) {
//unimportant...just stuff added for GUI..
}
private void addButtonActionPerformed(java.awt.event.ActionEvent evt) {
//test1Field through test4Field are the test scores....
aryStudent[numOfStudents][0] = Integer.parseInt(test1Field.getText());
aryStudent[numOfStudents][1] = Integer.parseInt(test2Field.getText());
aryStudent[numOfStudents][2] = Integer.parseInt(test3Field.getText());
aryStudent[numOfStudents][3] = Integer.parseInt(test4Field.getText());
StringBuilder sb = new StringBuilder();
for (int x=0; x < numOfStudents ; x++) {
sb.append(firstNameField.getText() + " " + lastNameField.getText());
for (int y=0; y < 4; y++) {
sb.append(" " +aryStudent[x][y]);
}
sb.append("\n");
}
studentListField.setText(sb.toString());
numOfStudents ++;
}
}
如何将'numOfStudents'和'x'的值添加为调试输出,以便更好地跟踪问题。 – Sentry 2013-04-25 15:57:25
您不在任何地方存储学生姓名。每次他们按下按钮时,都会获得当前的学生姓名,但似乎并未保存。它只是将其与其他数据一起写入studentFieldList,但每次按下按钮时都会覆盖它。 – Jason 2013-04-25 18:00:02