我有两种不同类型的对象:
public class Students{
protected String name;
protected int age;
}
public class InternationalStudents extends Students{
private String nationality;
}
我有一个数组列表,包含4个对象、2个学生和2个内部学生
我有一个这样的功能:
filling(Arraylist<Students> list,Students[][] objects) {
.......}
我想填充2d阵列,使其看起来像这样:
{ {name,age},{name,age},
{name,age,nationality},{name,age,nationality}
}
重要的部分是填充后的打印。它应该看起来像一个矩阵,例如:
Jim : 15 | Jacob: 16
Juan: 18 | Leonardo: 15
有人能帮我做填充功能吗?
也许你想要这样的东西:
Student[][] objects =
list.stream()
.collect(Collectors.groupingBy(o -> o instanceof InternationalStudent,
Collectors.collectingAndThen(Collectors.toList(),
a -> a.toArray(new Student[0]))))
.values()
.stream()
.toArray(Student[][]::new);