我有一个由3个参数构造的Student对象; ID,开始日期,结束日期。我已经使用Student类创建了一个Map。我想提取具有给定日期参数的相同startDate和endDate的学生。据我了解,我可以使用requestparams.values()
访问所有3个参数,但是由于我想分别比较日期,因此需要访问它们中的每个参数。有没有办法做到这一点?
我的代码的某些部分
public class StudentService {
private Map<String,Student> requestparams = DatabaseClass.getStudents();
public StudentService()
{
requestparams.put("123", new Student("123", "2017" , "2018"));
requestparams.put("1234", new Student("1234", "2016" , "2017"));
requestparams.put("8563", new Student("8563", "2015" , "2016"));
}
public List<Student> getFilteredStudent(String id, String startDate, String endDate)
{
List<Student> filteredStudents = new ArrayList<>();
for(String key : requestparams.keySet()){
if(key.equals(id) && /*requestparams.values().startDate == startDate something like this*/ ){
filteredStudents.add(requestparams.get(key));
}
}
return filteredStudents;
}