switch (op) {
case "+":
result=d1+d2;
break;
case "-":
result=d1-d2;
break;
case "×":
result=d1*d2;
break;
case "÷":
result=d1/d2;
break;
default:
break;
}
在Java7之前,switch只能支持 byte、short、char、int或者其对应的封装类以及Enum类型。现在jdk1.7中switch语句可以支持String类型的参数。所以我们的jdk改为1.7版本。但是改了之后发现以下问题:
Android requires compiler compliance level 5.0 or 6.0. Found ‘1.7’ instead.即要求使用较低版本(要求把1.7改为1.5或者1.6)。
网上找了很久都找不到完美解决这个问题的办法,只能用替换的办法做了。
if(op.equals("+")){
result=d1+d2;
}
if(op.equals("-")){
result=d1-d2;
}
if(op.equals("×")){
result=d1*d2;
}
if(op.equals("÷")){
result=d1/d2;
}
这样就行了,当然,里面的除法逻辑不完善,这个不是重点,只是提供一个思想的转换。诶,其实我是处女座来的,如果大家对上面的问题有什么解决办法,可以一起探讨哈。