3 回答
![?](http://img1.sycdn.imooc.com/5458622b000117dd02200220-100-100.jpg)
TA贡献1777条经验 获得超10个赞
您忘记了break语句,而System.out应该在switch语句之外。
String SString = "abc";
int x = SString.length() - 1;
int[] values = new int[x + 1];
for (int i = 0; i <= x; i++) {
switch (SString.charAt(i)) {
case 'a':
values[i] = 0;
break;
case 'b':
values[i] = 1;
break;
case 'c':
values[i] = 2;
break;
default:
break;
}
System.out.print(values[i] + " ");
}
输出:0 1 2
![?](http://img1.sycdn.imooc.com/533e4d660001312002000200-100-100.jpg)
TA贡献1796条经验 获得超10个赞
您忘记了每个案例陈述中的中断,因此所有案例都失败了,最终都以 values[i] = 2;
switch(SString.charAt(i)){
case 'a':
values[i] = 0;
break; // this one for each
case 'b':
...
![?](http://img1.sycdn.imooc.com/5458477f0001cabd02200220-100-100.jpg)
TA贡献1824条经验 获得超5个赞
你忘了break声明。
switch (SString.charAt(i)) {
case 'a':
values[i] = 0;
break;
case 'b':
values[i] = 1;
break;
case 'c':
values[i] = 2;
break;
}
添加回答
举报