例如,如果我写这样的代码:为什么我不能在开关中使用相同的变量?
double result = 0;
switch (operation) {
case "divide":
double result = (double) first/second;
string = Double.toString(result);
break;
case "multiply":
double result = (double) first * second;
string = Double.toString(result);
break;
case "substract":
double result = (double) first - second;
string = Double.toString(result);
break;
case "add":
double result = (double) first + second;
string = Double.toString(result);
break;
}
它返回错误:可变“结果”在范围已定义。
我知道如何解决这个问题。我可以在每种情况下创建一个不同的变量,但是这样会通过必须为每个变量编写代码来延长代码长度。
如何使这项工作在给定的代码中书写?
你可以像'案“鸿沟”括号包装每个案例:{...}'等等给每个情况下,它自己的范围 – daco
我只是想这样做,但它不能解决问题。它仍然报告相同的错误。 – Leonz
http://ideone.com/L2wu9I – Selvin