【发布时间】:2020-06-25 08:55:49
【问题描述】:
只是比较不同语言和 java (java 8) 中的一些行为,我尝试了一些东西,但得到了奇怪的结果:
在这里,我迭代了一个小的 String 数组,并将迭代器与值一起显示(没什么花哨的,我们同意...)。但是,当我更改单引号 ' ' 和双引号 "" 之间的 sysout 连接时,行为完全不同。 1- 显示迭代的最终结果(当我在循环中递增时为 3),它似乎从最后一次迭代计算 + 1,所以在这种情况下,最终结果是:
33Foo 34巴 35巴兹
public static void main(String[] args) {
int y = 0;
String[] arr= {"Foo", "Bar", "Baz"};
for(int i = 0; i < arr.length; i++) {
y++;
System.out.println(y +' '+ arr[i]);
}
}
同时将上面的内容改为双引号:
public static void main(String[] args) {
int y = 0;
String[] arr= {"Foo", "Bar", "Baz"};
for(int i = 0; i < arr.length; i++) {
y++;
System.out.println(y +" "+ arr[i]);
}
}
会有预期的结果:
1 富 2 酒吧 3巴兹
有人知道为什么吗?只是想知道使用单引号和双引号造成影响的原因...
【问题讨论】:
标签: java