gpt4 book ai didi

java - 使用 ArrayList 了解应用程序的结构

转载 作者:行者123 更新时间:2023-11-30 05:19:13 25 4
gpt4 key购买 nike

我需要帮助来理解我的“小型学生管理应用程序”的结构。我需要:

  1. 创建主题。
  2. 主题有名称和类别数量,这些类别是成绩类型,例如。 Java,2,作业,项目
  3. 每种类型的等级都有权重,例如家庭作业,10
  4. 将其保存在文件中

  5. 输入学生所选科目的成绩

  6. 学生拥有所选主题的每个类别的 ID、姓名和成绩。
  7. 保存到文件
  8. 根据“主题”的权重和插入的学生成绩进行一些计算。

我写了两个方法:

private void createSubject(String name, 
int numberOfCat,
List<String> category,
List<Integer> weight);

private void insertGrade(int id, String name, List<Integer> grade);

这些方法将subjects.txt和students.txt的输入保存为我的数据库表。我还有 editGrade 和 deleteSubject 以及 viewGrades 和 viewSubjects 的方法

现在我可以像这样添加到我的文件中:

subjects.txt ->(Java、家庭作业、10、项目、40、期末、50)

students.txt ->(001,约翰)

我的问题从这里开始。我现在无法想象我该如何:

  1. 从subjects.txt中选择一个主题

  2. 插入学生的成绩。成绩数必须与所选主题中的类别数相匹配。(这就是为什么在 insertGrade 中我只保存了 ID 和名称)

  3. 检索权重,以便我可以根据用户插入的成绩进行计算。

如果有人可以帮助我理解我该如何做到。我不需要代码,但我希望得到一些关于如何查看它的说明。谢谢你,我已经准备好交谈和学习了;)

最佳答案

您是否尝试将 SubjectStudent 抽象为类?

public class Execute {

public static void main(String[] args){
//1.Creating some instance of Grade
Grade grade1 = new Grade("Homework", 10);
Grade grade2 = new Grade("Project,", 40);
Grade grade3 = new Grade("Final,", 50);

//2.Putting all these grades in an ArrayList
List<Grade> grades = new ArrayList<Grade>();
grades.add(grade1);
grades.add(grade2);
grades.add(grade3);

//3.Creating an instance of Subject
Subject Java = new Subject("Java", grades);

//4.Putting the subject in an ArrayList
List<Subject> subjects = new ArrayList<Subject>();
subjects.add(Java);

//5.Creating an instance of Student
Student student = new Student("001", "John", subjects);

/**
* Now you have a student called John, choosing a subject called Java.
* There are 3 parts of this course: Homework, Project, and Final exam.
*/
}
}

public class Student {
private String id;
private String name;
private List<Subject> subjects;

public Student(String id, String name, List<Subject> subjects) {
this.id = id;
this.name = name;
this.subjects = subjects;
}
}

public class Grade {
private String name;
private Integer weight;

public Grade(String name, Integer weight) {
this.name = name;
this.weight = weight;
}
}

public class Subject {

private String name;
private List<Grade> grades;

public Subject(String name, List<Grade> grades) {
this.name = name;
this.grades = grades;
}
}

关于java - 使用 ArrayList 了解应用程序的结构,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/59825606/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com