我可以用数组列表填充二维数组吗



我有两种不同类型的对象:

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);

最新更新