intresult=0; if (operation.equals("+")) { result = a + b; } elseif (operation.equals("-")) { result = a - b; } elseif (operation.equals("*")) { result = a * b; } elseif (operation.equals("/")) { result = a / b; }
System.out.println("计算结果为:" + result); } }
缺点:
if表达式每次都需要判断,等于计算机做了三次无用功。
如果除法,输入了0,除法会报错。
1 2 3 4 5 6 7 8 9 10
输入第一个数字: 5 输入操作符: / 输入第二个数字: 0 Exception in thread "main" java.lang.ArithmeticException: / by zero at com.lawrence.designpattern.createtype.SimpleFactory.main(SimpleFactory.java:30)
intresult=0; switch (operation) { case"+" : result = a + b; break; case"-" : result = a - b; break; case"*" : result = a * b; break; case"/" : result = a / b; break; } return String.valueOf(result); }