3

所以我有这段代码,en1对象的实例在哪里。

for (int i = 0; i < 20; i++) {
    System.out.println("Introduce el nombre de una empresa");
    Scanner scanner = new Scanner(System.in);
    en1.setName(scanner.next());
}

我想将 1 更改en1为循环计数器。这可能吗?

4

3 回答 3

11

尝试使用数组

 en[i].setName (scanner.next ());
于 2012-08-02T20:34:39.957 回答
2

你最好的选择是使用一个数组并让每个元素对应于循环的迭代。

//Instantiation 
Enterprise[] en = new Enterprise[20];//the number of iterations you need

//You do not have a default constructor, so I would use this to add the "int index"
en[i] = new Enterprise(X); //For each enterprise where "X" is a number for the "int index"


//in the loop
en[i].setName(scanner.next());

我的示例中的数组将有 20 个元素(0 到 19)。每一个都可以对应一个迭代。无法根据其他变量更改变量的名称。

于 2012-08-02T20:37:54.813 回答
1

不,您不能使用 Java 中的变量更改参数的名称。像其他用户建议的那样,创建一个 en 对象数组并使用循环计数器访问每个单独的对象。这种方式更加清洁和惯用。

于 2012-08-02T20:37:10.393 回答