【发布时间】:2019-09-26 00:57:32
【问题描述】:
在调用构造函数时,我需要使用 ArrayList 中的下一个元素来创建对象
public class MinionToy implements ISurprise {
private static final ArrayList<String> arrMinion = new ArrayList<String>(
Arrays.asList("Dave", "Carl", "Kevin", "Stuart", "Jerry", "Tim"));
private static int currentToyIndex = 0;
private String surpriseName;
private MinionToy(String minionName) {
this.surpriseName = minionName;
}
public static MinionToy generate() {
if (currentToyIndex < arrMinion.size()) {
return new MinionToy(arrMinion.get(currentToyIndex));
} else {
currentToyIndex = 0;
}
currentToyIndex++;
return new MinionToy(arrMinion.get(currentToyIndex));
}
@Override
public void enjoy() {
System.out.println("You have received the minion named: " + this.surpriseName);
}
}
创建对象时,应始终使用下一个名称创建它。相反,它只是创建了 Dave、Dave 等
【问题讨论】:
标签: java