新手和老手的区别之一,就是看代码的简洁程度。简洁的办法之一就是代码复用。
看着我前面围绕等于写了至少5个方法,其实这其中有方法也由另外的方法调用,这就达到了复用的目的。举个例子,上节课讲到的取反,它的代码就用到了SetCaclLists方法。我不能在caclString上直接取反,那样做代码不是一般的长,也可能不可行。那么怎样实现呢?
答案是:收到取反命令,先把已经接收到的输入串也就是caclString送入集合,然后根据i的值设置所在项的相反数,再通过还原算式显示取反的结果。
private void Contrary() { if (noStringAdded) { return; } try { CaclLists.Clear(); haveDecimal = false; isOPAdded = false; i = 0; SwichString(); if (CaclLists.Count == i) { CaclLists[i - 1].StringEnter = (-decimal.Parse(CaclLists[i - 1].StringEnter)).ToString(); } else CaclLists[i].StringEnter = (-decimal.Parse(CaclLists[i].StringEnter)).ToString(); CaclString = string.Concat(CaclLists); } catch (Exception ex) { Result = ex.Message; } }
所以,这也需要那个ToString覆写方法的配合。在原有的基础上加个判断,那个StringEnter是不是负数,如果是,左右添加括号。
第十五课结语。分的效果并非只是为分解问题和清晰思路,它还会有其他的效应,代码复用是其中之一。
第十五课代码复用——C#计算器编程教学
最新推荐文章于 2023-02-06 18:51:13 发布