在java中的for循环中初始化对象?

Joh*_*dep 2 java initialization object

假设Sports,School,Home在Java类.与Home具有例如方法

void add(Sports t1, School t2);
Run Code Online (Sandbox Code Playgroud)

这是我想要做的:

Sports s1 = new Sports("value1");
School t2 = new School("value1");
Home h = new Home();
h.add(s1,t2);
Run Code Online (Sandbox Code Playgroud)

现在的问题是,我想重复这些步骤太多次了.与h保持不变.所以这h.add()被称为多次,不同的对象作为参数,值使用forloop来自外部.有人可以告诉我如何初始化这些对象并调用e,ga中的add方法在每次迭代中使用不同的对象名称循环?

jjn*_*guy 7

您可以在此处使用数组(或列表).

例:

Home h = new Home();
Sports[] sports = new Sports[10];
School[] schools = new School[10];
for (int i =0; i< sports.length; i++) {
    h.add(sports[i], schools[i]);
}
Run Code Online (Sandbox Code Playgroud)

在上面的示例中,您将需要一种方法来初始化sportsschools数组的内容.

也许上面的这种微小变化是你需要的:

Home h = new Home();
String[] sports = // existing array of sport names
String[] schools = // array of school names
for (int i =0; i< sports.length; i++) {
    h.add(new Sports(sports[i]), new School(schools[i]));
}
Run Code Online (Sandbox Code Playgroud)

在这里,我们使用学校和运动名称的数组来创建所有添加的对象Home.