一尘不染

如何在Java中使用动态名称分配变量?

java 动态变量

如何在Java中使用动态名称分配变量?例如:

int n1,n2,n3;

for(int i=1;i<4;i++)
{
    n<i> = 5;
}

阅读 792

收藏
2020-01-10

共1个答案

一尘不染

这不是你在Java中做事的方式。Java中没有动态变量。Java变量必须在源代码中声明。

根据要实现的目标,应使用数组、List或 Map;例如

int n[] = new int[3];
for (int i = 0; i < 3; i++) {
    n[i] = 5;
}

List<Integer> n = new ArrayList<Integer>();
for (int i = 1; i < 4; i++) {
    n.add(5);
}

Map<String, Integer> n = new HashMap<String, Integer>();
for (int i = 1; i < 4; i++) {
    n.put("n" + i, 5);
}

可以使用反射来动态引用源代码中已声明的变量。但是,这仅适用于属于类成员的变量(即静态字段和实例字段)。它不适用于局部变量。

2020-01-10