转载请注明出处: http://blog.csdn.net/like_program/article/details/52006693
上一篇博客中,我们美化了计算器的界面。但是计算功能还有些瑕疵:
- 如果计算结果是 无限循环 或 无限不循环 小数,那么在屏幕上就会占很长一列空间。
- 如果在计算完一个表达式后,直接按 + - × / 中任何一个运算符,再随便按一个数字,就不能连续计算表达式了。
对于第一个问题,我的解决方案是:
判断计算结果的小数位,如果超过4位小数,就精确到4位小数。
修改 CalculatorActivity.java 中的代码如下:
public class CalculatorActivity extends Activity {
@Override
protected void onCreate(Bundle savedInstanceState) {
......
}
......
/**
* 执行 待计算表达式,当用户按下 = 号时,调用这个方法
*/
private void executeExpression() {
try {
// 调用第三方 jar 包来执行运算
mResult = Calculator.execute(mLastStr);