2017-2018-2 20172310『Java程序设计』课程 结对编程练习_四则运算_第二周

时间:2023-03-08 17:02:12
2017-2018-2 20172310『Java程序设计』课程 结对编程练习_四则运算_第二周

2017-2018-2 20172310『Java程序设计』课程 结对编程练习_四则运算_第二周

博客要求

组内同学需各自发表博客
博客中需包含以下内容:
相关过程截图
关键代码解释
遇到的困难及解决方法
写出项目中自己负责的部分
个人贡献度划分(按百分比给小组各成员划分贡献度,各成员贡献之和为100%)
对结对的小伙伴做出评价给出小伙伴博客链接(重点指出需要改进的地方)
给出项目的码云链接
给出小组结对编程照片
博客内容中如需展示团队的共同成果,请进行说明
如有参考或引用的设计、实现,请进行说明

关键的代码的解释

设计思路是:首先创建一个二维数组来作为判断操作符运算级的依据,然后实例化一个StringTokenizer类对象,将生成的表达式作为一个String存入st中,并以空格作为分隔符。

StringTokenizer的用法是
2017-2018-2 20172310『Java程序设计』课程 结对编程练习_四则运算_第二周

然后判断A中存放的是否是操作符,再根据中缀转后缀的规则进行编码。

  • 后缀表达式计算的部分的关键代码:
    2017-2018-2 20172310『Java程序设计』课程 结对编程练习_四则运算_第二周
    2017-2018-2 20172310『Java程序设计』课程 结对编程练习_四则运算_第二周
    2017-2018-2 20172310『Java程序设计』课程 结对编程练习_四则运算_第二周

遇见的问题

  • 之前按照我们的思路,在用户输入答案时,我们让用户将分子、分母分开输入,
    2017-2018-2 20172310『Java程序设计』课程 结对编程练习_四则运算_第二周
  • 解决方案:这样的输入方式很不方便,也不利于程序的应用。于是就将代码进行了修改。
    2017-2018-2 20172310『Java程序设计』课程 结对编程练习_四则运算_第二周

这是修改以后的效果。

  • 在实现表达式的一个循环时,我遇到了一个问题,那就是——如何将一个字符串存入一个字符串中,就是实现字符串的拼接,以达到可以循环的目的。
    2017-2018-2 20172310『Java程序设计』课程 结对编程练习_四则运算_第二周
    之前一直都只是在int型的数值时使用+=,那字符串也可以使用+=吗?我进行了尝试。
    发现字符串也可以使用+=。

自己负责的部分

我主要是负责表达式的生成、类图的制作、新项目的创建以及中缀表达式转后缀表达式和运算的代码的检查和后期修改。
其实这周自己做出的贡献值真的是很低的(主要是这周周末的时候花费了一天进行素拓( ̄▽ ̄)~*)

个人贡献度划分

队友20172309 贡献度55% 队友博客
我20172310 贡献度45%

项目的码云链接

结对编程_09_10

小组结对编程照片

2017-2018-2 20172310『Java程序设计』课程 结对编程练习_四则运算_第二周

评价和感想

  • 我们前期有过很多种想法,每个想法都是可以达到目的的,在讨论和思维的碰撞中,我发现我的思路被拓展了,队友也同样学到了一些我编代码的想法。于是我们择优,从我们不同的想法中找寻各自的优点,再结合在一起,这点我觉得是很好的,希望我们接下来可以继续保持这一点。
  • 我们代码的还是存在一些缺陷,有些问题比较难出现,但是这并不代表着不需要解决,所以后期还要继续改进。
  • 在写代码的时候,其实就是在不断地温习和巩固的过程,同样我们也学习到了新的知识。
  • 当我们刚开始拿到这个项目的题目时,其实是一头雾水的,但是慢慢地我们一起将思路理清,然后在来编写代码,知道代码一点一点的出现,我们离成功也越来越接近,一种满足感和自豪感在心中油然而生。编写代码确实是一件耗时的事情,前期的思路,然后编写,最后调试,这些都是必不可少的,我觉得我需要耐心一点,一步一步,脚踏实地。