题目:https://www.lintcode.com/problem/478/note/?_from=collection&fromId=192
说实话。用if语句来做这个内容显得这个简单的程序变得特别臃肿。
class Calculator {
public:
/**
* @param a: An integer
* @param operator: A character, +, -, *, /.
* @param b: An integer
* @return: The result
*/
int calculate(int a, char Operator, int b) {
// write your code here
//cin >> operator;
if (Operator == '+'){
return a + b;
}
else if(Operator =='-' ){
return a - b;
}
else if(Operator == '*'){
return a * b;
}
if(Operator == '/'){
return a / b;
}
}
};
使用switch的方式做题如下:
class Calculator {
public:
/**
* @param a: An integer
* @param operator: A character, +, -, *, /.
* @param b: An integer
* @return: The result
*/
int calculate(int a, char Operator, int b) {
// write your code here
//cin >> operator;
switch (Operator){
case '+':
return a + b;
case '-':
return a - b;
case '*':
return a * b;
case '/':
return a / b;
}
}
};
使用switch的方式显得清晰很多。