我对编程非常陌生,我需要一些作业帮助。我想知道以下情况是否可行以及如何实现。
假设我有2个类,class Course
和class Student
。这些类可以产生许多对象,例如:
Course 1 obj
Course 2 obj
Student 1 obj
Student 2 obj
Student 3 obj
Student 4 obj
我的问题是,如何将Student class
的对象与Course class
的对象关联?我想做这样的事情:
Course 1 obj
:具有对象Student 1
,2
,4
Course 2 obj
:具有对象Student 2
,4
我们的老师说我们应该创建另一个类,为每个Student objects
容纳Course object
,但是我不知道我该怎么做。
到目前为止,我已经创建了Student objects
并将它们存储在ArrayList
中。我对Course objects
做过同样的事情。
但是我真的迷住了如何链接到另一个。
答案 0 :(得分:2)
如果我的问题正确,您想将课程映射到学生(或学生名单)。
有几种方法可以做到这一点,其中一种是使用 Hashtable
与您提供的数据有关的通用代码示例:
ArrayList<Student> list1 = new ArrayList<Student>();
list1.add(Student1);
list1.add(Student2);
list1.add(Student4);
ArrayList<Student> list2 = new ArrayList<Student>();
list1.add(Student2);
list1.add(Student4);
Hashtable<Course,ArrayList<Student>> hashTable = new
Hashtable<Course,ArrayList<Student>>();
hashTable.put(Course1,list1);
hashTable.put(Course2,list2);
要获取链接到键(在这种情况下为课程)的值(在这种情况下为学生列表),只需调用 get(Key)方法
ArrayList<Student> list3 = hastTable.get(Course1);//this will return the value(list1) mapped/linked to the key(Course1)
有关哈希表的更多信息,请参见https://docs.oracle.com/javase/10/docs/api/java/util/Hashtable.html
答案 1 :(得分:1)
我认为您正在寻找的是创建一个Course class
,然后在其中创建一个学生列表(ArrayList
)(Student
类)。这个Student
类是一个不同的类,仅在Course
内部使用。