生成 1 个对象的多个版本的最佳方法 JAVA
The best way to generate multiple version of 1 object JAVA
我正在尝试生成行星,我想知道在 for 循环中创建对象的最佳方法。我还希望能够与 for 循环中的对象进行交互。例如改变他们的 x 和 y。
我们将不胜感激。
示例:
List<Planet> planets = new ArrayList<>();
for(int i = 0; i < 10; i++) {
Planet p = new Planet();
p.setX(0);
p.setY(0);
planets.add(p);
}
for(int i=0; i < numOfObjectsToMake; i++){
Point p = new Point();//make whatever object
p.x = valX; //set what ever here
p.y = valY; //set what ever here
//Problem - im going to lose the object
}
此时您需要一些方法来存储您创建的对象,否则循环的下一次迭代将替换它。
所以在这种情况下,我将使用列表来存储它,您可能需要考虑将其存储在哪种类型的 collection 中。可能是一个列表,一个集合,甚至一个数组会做的。
//Make list before so its within scope
ArrayList ls = new ArrayList<Point>();
for(int i=0; i < numOfObjectsToMake; i++){
Point p = new Point();//make whatever object
p.x = valX; //set what ever here
p.y = valY; //set what ever here
ls.add(p);//Problem solved i have stored the object
}
ls.get(...);//pull out objects later for use
我正在尝试生成行星,我想知道在 for 循环中创建对象的最佳方法。我还希望能够与 for 循环中的对象进行交互。例如改变他们的 x 和 y。 我们将不胜感激。
示例:
List<Planet> planets = new ArrayList<>();
for(int i = 0; i < 10; i++) {
Planet p = new Planet();
p.setX(0);
p.setY(0);
planets.add(p);
}
for(int i=0; i < numOfObjectsToMake; i++){
Point p = new Point();//make whatever object
p.x = valX; //set what ever here
p.y = valY; //set what ever here
//Problem - im going to lose the object
}
此时您需要一些方法来存储您创建的对象,否则循环的下一次迭代将替换它。
所以在这种情况下,我将使用列表来存储它,您可能需要考虑将其存储在哪种类型的 collection 中。可能是一个列表,一个集合,甚至一个数组会做的。
//Make list before so its within scope
ArrayList ls = new ArrayList<Point>();
for(int i=0; i < numOfObjectsToMake; i++){
Point p = new Point();//make whatever object
p.x = valX; //set what ever here
p.y = valY; //set what ever here
ls.add(p);//Problem solved i have stored the object
}
ls.get(...);//pull out objects later for use