DSF*_*DSF 0 java string variables
好的,所以我有以下代码:
Random rnd = new Random();
int i = 0;
while(i<1000) {
String name = "event" + i;
Event name = new Event(rnd.nextInt(100000)); //ERROR duplicate variable
SimEngine.getScheduler().addEventToQueue(event);
i++;
}
System.out.println(SimEngine.getScheduler().getQueue().iterator());
Run Code Online (Sandbox Code Playgroud)
我知道两次宣布名字毫无意义,但我希望你能看到我想要做的事情.因为我想要名称为event1,event2,event3等的Event对象.
我怎样才能让它使用String名称作为Event对象的名称?
因为我想要名称为event1,event2,event3等的Event对象.
对象不(通常)具有名称.变量有名字.你真的不希望有名字的变量event1,event2等虽然.
在这种情况下,如果您确实需要通过索引访问事件,则基本上应该使用数组.
Event[] events = new Event[1000];
for (int i = 0; i < 1000; i++) {
events[i] = new Event(rnd.nextInt(100000));
SimEngine.getScheduler().addEventToQueue(events[i]);
}
Run Code Online (Sandbox Code Playgroud)
当然,如果你以后不打算使用这个变量,那么无论如何它都是毫无意义的,而且你也可以:
for (int i = 0; i < 1000; i++) {
SimEngine.getScheduler().addEventToQueue(new Event(rnd.nextInt(100000));
}
Run Code Online (Sandbox Code Playgroud)
如果这个特定类的类确实有一个与每个实例相关联的名称,我怀疑你需要将该名称传递给构造函数.