Java:将字符串的值分配给循环中的新字符串
我是java新手,我正在尝试将字符串的值分配给循环中的另一个字符串,以下是示例:
public static void main(String[] args) {
int j = 100;
int k = 20;
String n0 = "&";
String n1 = "|";
String n2 = "^";
String n3 = "~";
for(int n = 0; n < 4; n++)
{
if(n < 3){
String operator = "n"+n;
System.out.println(operator);
}
}
}
我期待着这样的结果:
& | ^
但我得到的结果实际上是:
n0 n1 n2
我怎样才能得到预期的结果?有人能解释为什么我会得到这个结果吗
谢谢
# 1 楼答案
您要做的是打印与当前循环索引连接的字符串“n”。对于索引0、1和2,运行此循环3次。这就是为什么结果是“n0”、“n1”和“n2”。如果你真的想通过一个循环访问你的变量,你需要把它们放在一个合适的数据结构中,比如数组(如其他人所说)。如果要将字符串放入数组,可以使用以下示例:
这段代码将变量添加到数组中,然后迭代该数组,并打印保存在数组中的值,即变量
# 2 楼答案
您尝试按名称访问变量,但这是不可能的,相反,您可以创建一个包含键
n1, n2, ..
和预期值的映射,如下所示:然后你可以得到这个值:
完整的代码可以是这样的:
# 3 楼答案
不能使用变量名调用变量,例如,需要将它们存储在数组中: