java - 从 ArrayList 查询学生姓名并在文本区域中返回结果

标签 java user-interface

我正在尝试完成一个程序(是的,家庭作业),它是一个简单的学生管理系统。

学生的姓名和成绩(作业和考试)从 XML 文档中解析出来,然后姓名存储在 JList 中,成绩存储在 ArrayList 中。

我正在尝试弄清楚如何实现一个查询按钮,以便用户可以输入学生的姓名并在 GUI 的文本区域中列出学生的姓名和成绩。到目前为止,这是我为查询编写的方法:

   void queryStudent(){

       if (!students.isEmpty()) {
          queryResultTextArea.setText("Student's Name: " + students.get(0).getName() + newline);

            for(int i=0; i<6; i++){
               queryResultTextArea.append("Homework " + (i + 1) + ": " +  String.valueOf(students.get(0).getRecordList().get(i).getResult()) + newline);
            }

            for(int j=0; j<3; j++){
                queryResultTextArea.append("Exam " + (j + 1) + ": " + String.valueOf(students.get(0).getRecordList().get(j+6).getResult()) + newline);
            }

            queryResultTextArea.append("Final Grade: " + String.valueOf(students.get(1).getFinalGrade()));


         }else {
             queryResultTextArea.setText("Please load data first!");

        }
    }   

如您所见,我不确定如何对方法进行编码,以便查询的学生与成绩相关联并在文本区域中返回。我什至不确定我是否正确传达了这一点。

最佳答案

我假设您有一个 Student 类,其中包含学生的姓名、年级和可能的身份代码,并且您的 JList 模型包含 Student 对象,并有一个自定义单元格渲染器以按姓名显示每个 Student。也许按姓名搜索的最佳方式是将同一个 Students 集合放入 Map<String, Student> 中。例如 HashMap<String, Student>这样您就可以使用他/她的名字作为关键字找到学生。不过,这需要没有重复的名称。

关于java - 从 ArrayList 查询学生姓名并在文本区域中返回结果,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/13851083/

相关文章:

java - 处理大量 onClick id 的最佳方法?

java - 具有 protected 和可选择单元格的 Jtable

android自定义按钮形状

java - 我的 GMF 生成的图表代码有什么问题?

java - 从 Java 字符串中删除特殊字符

c - TeleUSE 窗口不调整大小

python - tkinter 选项菜单 - 即时更新选项

c++ - 设置背景颜色 CMDIFrameWnd

java - 在方法中使用 ActionListeners 创建 GUI

java - 如何将新对象分配给现有对象