I need to make a number of distinct objects of a class at runtime. This number is also determined at runtime.
Something like if we get int no_o_objects=10 at runtime.
Then I need to instantiate a class for 10 times.
Thanks
I need to make a number of distinct objects of a class at runtime. This number is also determined at runtime.
Something like if we get int no_o_objects=10 at runtime.
Then I need to instantiate a class for 10 times.
Thanks
Read about Arrays in the Java Tutorial.
class Spam {
public static void main(String[] args) {
int n = Integer.valueOf(args[0]);
// Declare an array:
Foo[] myArray;
// Create an array:
myArray = new Foo[n];
// Foo[0] through Foo[n - 1] are now references to Foo objects, initially null.
// Populate the array:
for (int i = 0; i < n; i++) {
myArray[i] = new Foo();
}
}
}
Objects in Java are only created at Runtime.
Try this:
Scanner im=new Scanner(System.in);
int n=im.nextInt();
AnyObject s[]=new AnyObject[n];
for(int i=0;i<n;++i)
{
s[i]=new AnyObject(); // Create Object
}
This would do it.
public AClass[] foo(int n){
AClass[] arr = new AClass[n];
for(int i=0; i<n; i++){
arr[i] = new AClass();
}
return arr;
}
You can use array or List
as shown below.
MyClass[] classes = new MyClass[n];
Then instantiate n classes with new MyClass()
in a loop and assign to classes[i]
.