我正在寻找一种缩短代码的方法,避免重复代码和if语句.我正在做的是创建一个计算器,在字符串中搜索运算符“* / – ”并相应地执行它们.有任何想法吗?
if(exp.charAt(i)=='*')
{
newResult=Integer.parseInt(exp.substring(0, i)) * Integer.parseInt(exp.substring(i+1, exp.length()));
primeResult = newResult;
System.out.println(primeResult);
}
else if(exp.charAt(i)=='/')
{
newResult=Integer.parseInt(exp.substring(0, i)) / Integer.parseInt(exp.substring(i+1, exp.length()));
primeResult = newResult;
System.out.println(primeResult);
}
else if(exp.charAt(i)=='+')
{
newResult=Integer.parseInt(exp.substring(0, i)) + Integer.parseInt(exp.substring(i+1, exp.length()));
primeResult = newResult;
System.out.println(primeResult);
}
else if(exp.charAt(i)=='-')
{
newResult=Integer.parseInt(exp.substring(0, i)) - Integer.parseInt(exp.substring(i+1, exp.length()));
primeResult = newResult;
System.out.println(primeResult);
}
另外,是否有一个解决方案来接受一个包含2个以上操作数的字符串?即5 10 * 2/3