作为我作业的一部分,我们得到了一个我们不能更改的接口,以及一些用来开发我们方法的预定义测试。
界面如下:
public interface ContactTracer {
public void addCourse(String courseID, String courseName);
public void addStudent(String id, String name, String email);
public void loadStudentCourseList(Map<String, String> enrolments);
public String getStudentName(String studentID);
public String getStudentEmail(String studentID);
public String getCourseForStudent(String studentID);
public String getCourseName(String courseID);
public List<String> findStudentsForCourse(String courseID);
public List<String> findContacts(String studentID);
我正在运行的特定测试:
@Test
void testLoadStudentCourseList() {
ContactTracer ct = new PartOneContactTracer();
Map<String, String> enrolments = new HashMap<>();
enrolments.put("S101", "SOFT01");
enrolments.put("S102", "NET02");
enrolments.put("S103", "SOFT01");
ct.loadStudentCourseList(enrolments);
List<String> students = ct.findStudentsForCourse("SOFT01");
assertEquals(2, students.size());
assertTrue(students.contains("S101"));
assertTrue(students.contains("S103"));
以及我需要从测试中创建的方法:
@Override
public List<String> findStudentsForCourse(String courseID) {
return null;
}
从测试中我可以看出,在findStudentsForCourse
方法中,我需要创建列表
并用注册映射中匹配的学生填充它,然后返回列表。
我创建了以下字段:-
public class PartOneContactTracer implements ContactTracer {
private Map<String, String> courseDetails = new HashMap<>();
private Map<String, String> studentName = new HashMap<>();
private Map<String, String> studentEmail = new HashMap<>();
private Map<String, String> enrolments = new HashMap<>();
我搞不懂的是,如何将注册地图中的数据传递到学生列表中,以使测试中的断言为真。
您不需要创建列表并填充它,只需在地图中搜索所有具有值(课程id)的键(学生):
public List<String> findStudentsForCourse(String courseId) {
return enrolments.entrySet().stream()
.filter(e -> e.getValue().equals(courseId))
.map(e -> e.getKey())
.collect(Collectors.toList());
}
所以我用Java处理这些数据: 我需要将其转换为JSON: 但是我不知道怎么做。 目前我认为这是最好的方法: 但我不确定如何使用Hashmap实现这一点。我知道是这样的: 但确切的语法,以及如何将其与其他数据一起添加,我无法计算。有什么想法吗?
我有一个有两列的表,一个是string,另一个是double Type。例如, 我正在尝试读取所有的值,并将它们加载到中 我在读取表数据方面没有任何问题,但不能按我的要求将它们放入HashMap中。 我编写了一个示例代码来从两个不同的数组(string和double)填充一个HashMap,但仍然无法处理HashMap的值部分,它是一个数组。 任何建议我如何处理HashMap的值部分,它是一个数组
问题内容: 是否可以使用Spring @Value将值从属性文件映射到HashMap。 目前,我有这样的事情,映射一个值不是问题。但是我需要在HashMap到期中映射自定义值。这样的事情可能吗? 属性文件:“ my_service.properties” 是否可以像这样的键映射:值集 name1 = 100 name2 = 20 问题答案: 在Spring配置中注册属性文件: 然后创建组件: 当我
我如何从一个HashMap填充JList而只在列表中显示值呢?
> 名称1=100 名称2=20
第一个类称为FileReader,它读取一个逐行写入的txt文件,我们需要的每个字段都用“;”分隔,例如(“哥伦比亚大学”;“美国”;78.86;2012)。每行包含2个字符串(大学名和国家)和2个数字(分数和年份)。FileReader类在读取txt文件后,在ArrayList中返回其内容。 该作业的第二个类称为UniversityScores,它有4个字段(uniname、country、sc