Given:
class Student {
String course, name, city;
public Student (String name, String course, String city) {
this.course = course; this.name = name; this.city = city;
}
public String toString() {
return course + “:” + name + “:” + city;
}
and the code fragment:
List<Student> stds = Arrays.asList(
new Student (“Jessy”, “Java ME”, “Chicago”),
new Student (“Helen”, “Java EE”, “Houston”),
new Student (“Mark”, “Java ME”, “Chicago”));
stds.stream()
.collect(Collectors.groupingBy(Student::getCourse))
.forEach(src, res) -> System.out.println(scr));
What is the result?
A.
[Java EE: Helen:Houston]
[Java ME: Jessy:Chicago, Java ME: Mark:Chicago]
B.
Java EE
Java ME
C.
[Java ME: Jessy:Chicago, Java ME: Mark:Chicago]
[Java EE: Helen:Houston]
D.
A compilation error occurs.
B (code is uncomplete)
// missing code
public String getCourse() {
return course;
}
B.
make correction in this line.
.forEach((src, res) -> System.out.println(src));
my answer is also same B
if we add missing code like CompileTeste
public String getCourse() {
return course;
}
answer will be A if we change println(src) to println(res)
B. is correct (code incomplete)
B