将一个类的对象分组为另一个类中的对象数组可以通过以下步骤实现:
这样,就可以将一个类的对象分组为另一个类中的对象数组。
以下是一个示例代码,演示如何将一个名为Person的类的对象分组为另一个名为Group的类中的对象数组,以年龄作为分组条件:
class Person {
String name;
int age;
public Person(String name, int age) {
this.name = name;
this.age = age;
}
}
class Group {
String groupName;
Person[] members;
public Group(String groupName, Person[] members) {
this.groupName = groupName;
this.members = members;
}
}
public class Main {
public static void main(String[] args) {
Person[] people = {
new Person("Alice", 25),
new Person("Bob", 30),
new Person("Charlie", 25),
new Person("David", 30)
};
Group[] groups = groupByAge(people);
for (Group group : groups) {
System.out.println("Group: " + group.groupName);
for (Person person : group.members) {
System.out.println("Name: " + person.name + ", Age: " + person.age);
}
System.out.println();
}
}
public static Group[] groupByAge(Person[] people) {
// 创建目标类对象数组
Group[] groups = new Group[2];
// 遍历源类对象
for (Person person : people) {
// 判断是否满足分组条件
if (person.age == 25) {
// 创建目标类对象
Person[] members = {person};
Group group = new Group("Group 25", members);
// 将对象添加到目标类对象数组
groups[0] = group;
} else if (person.age == 30) {
// 创建目标类对象
Person[] members = {person};
Group group = new Group("Group 30", members);
// 将对象添加到目标类对象数组
groups[1] = group;
}
}
// 返回目标类对象数组
return groups;
}
}
在这个示例中,我们将Person类的对象按照年龄分组为Group类的对象数组。根据年龄的不同,将Person对象分别放入名为"Group 25"和"Group 30"的Group对象中。最后,打印出每个Group对象的成员信息。
请注意,这只是一个示例,实际应用中,根据具体需求和类的定义,分组的条件和目标类的属性可能会有所不同。
领取专属 10元无门槛券
手把手带您无忧上云