《Java 程序设计》课堂实践项目简易计算器 课后学习总结

目录

  • 改变
  • 简易计算器实验要求
  • 课堂实践成果
  • 课后思考

改变

修改了博客整体布局,过去就贴个代码贴个图很草率,这次布局和内容都有修改。

    加了一些类定义相关的拓展的内容,图片等都是再次运行之后截得细致的图片,电脑上也有原图。

简易计算器实践要求

提交测试码云链接和测试截图(测试不要和下面的示例相同),加上学号信息

实现一个简易计算器Calc,支持+ - x / 和%运算, 从命令行传入计算数据,比如:

java Calc 2 + 3     结果为 2 + 3 = 5
java Calc 8 - 3     结果为 8 - 3 = 5
java Calc 2 x 3     结果为2 x 3 = 6
java Calc 10 / 2     结果为10 / 2 = 5
java Calc 10 % 3     结果为10 % 3 = 1

public class Calc {
       public static void main(String [] args) {
  
           int result = 0;
           if (args.length != 3) {
               System.out.println("Usage: java Calc operato1 operand(+ - * / %) operator2");
           }
            
          //+ - x / 和%运算         
 
          Systerm.out.println(args[0] + " " + args[1] + " " + args[2] + " = " + result);
 
      }
  }

课堂实践成果

代码如下:

/**  * Created by Lenovo on 2017-06-07.  */
public class Calc{
public static void main (String [] args){
int result = 0;
final char ADD = '+';
final char SUB = '-';
final char MULTI = 'x';
final char DIV = '/';
final char MOD = '%';
if (args.length != 3){
System.out.println("Usage: java Calc operator1 operand(+ - * / %) operator2");
}
else switch (args[1].toCharArray()[0]){
case ADD:
result = Integer.parseInt(args[0]) + Integer.parseInt(args[2]);
break;
case SUB:
result = Integer.parseInt(args[0]) - Integer.parseInt(args[2]);
break;
case MULTI:
result = Integer.parseInt(args[0]) * Integer.parseInt(args[2]);
break;
case DIV:
result = Integer.parseInt(args[0]) / Integer.parseInt(args[2]);
break;
case MOD:
result = Integer.parseInt(args[0]) % Integer.parseInt(args[2]);
break;
default:
System.out.println("Usage: java Calc operato1 operand(+ - x / %) operator2");
break;
}
System.out.println(args[0] + " " + args[1] + " " + args[2] + " = " + result);
}
}

实验截图如下:

添加四则运算的细则,以及其中的case条件语句。

需要注意以下两点:

  • 仅适用于两个数之间的运算
  • 在edit中添加元素时需要在其中加入空格(字符与字符之间用空格隔开)

由于要求是命令行下执行,所以:

学习反思及总结

这次实践是对之前后缀表达式的一个延伸练习,用到了c语言中的case用法,这个实践举不出什么例子来。

实践的每一个步骤都是重新做的,因此截图都是重新截得,但是博客日期可以看出是当时有写只不过很草帅而已,经过本次修改希望老师满意

《Java 程序设计》课堂实践项目-简易计算器的更多相关文章

  1. 《Java 程序设计》课堂实践项目汇总链接

    1.<Java 程序设计>课堂实践项目-命令行参数 2.<Java 程序设计>课堂实践项目-mini dc 3.<Java 程序设计>课堂实践项目-Arrays和S ...

  2. 《Java 程序设计》课堂实践项目 课后学习总结

    <Java 程序设计>课堂实践项目 课后学习总结 String类的使用(sort) 目录 Linux命令(sort) 课堂实践 课后思考 学习老师的代码之后的思考:int与Integer ...

  3. 《Java 程序设计》课堂实践项目-类定义

    <Java 程序设计>课堂实践项目类定义 课后学习总结 目录 改变 类定义实验要求 课堂实践成果 课后思考 改变 修改了博客整体布局,过去就贴个代码贴个图很草率,这次布局和内容都有修改. ...

  4. 《Java 程序设计》课堂实践项目-Arrays和String单元测试

    <Java 程序设计>课堂实践项目-Arrays和String单元测试 课后学习总结 目录 改变 Arrays和String单元测试实验要求 课堂实践成果 课后思考 改变 修改了博客整体布 ...

  5. 20155308 2016-2017-2《Java程序设计》课堂实践项目

    20155308 2016-2017-2<Java程序设计>课堂实践项目 在java.lang包中有String.split()方法,返回是一个数组 我在应用中用到一些,给大家总结一下,仅 ...

  6. # 20155308 2016-2017-2《Java程序设计》课堂实践项目 5月17日

    20155308 2016-2017-2<Java程序设计>课堂实践项目 5/17 本次因为git出现了问题,所以没有按时提交我的代码 问题一 在IDEA中对P145 MathTool.j ...

  7. 20155320 2016-2017-2《Java程序设计》第十二周课堂实践项目

    20155320 2016-2017-2<Java程序设计>第十二周课堂实践项目 1.修改教材P98 Score2.java, 让执行结果数组填充是自己的学号: 2.在IDEA中以TDD的 ...

  8. 20155321 2016-2017-2《Java程序设计》课堂实践项目2

    20155321 2016-2017-2<Java程序设计>课堂实践项目2 实践内容 编写MyCP.java 实现类似Linux下cp XXX1 XXX2的功能,要求MyCP支持两个参数: ...

  9. 20155321 2016-2017-2《Java程序设计》课堂实践项目

    20155321 2016-2017-2<Java程序设计>课堂实践项目 关于String类 split方法 charAt方法 项目题目: 模拟实现Linux下Sort -t : -k 2 ...

随机推荐

  1. LeetCode题解之Intersection of Two Linked Lists

    1.题目描述 2.问题分析 使用unordered_set 将链表A中的节点地址全部插入,然后使用链表B中的每个节点在A中查找. 3.代码 ListNode *getIntersectionNode( ...

  2. leetCode题解之寻找string中最后一个word的长度

    1.题目描述 返回一个 string中最后一个单词的长度.单词定义为没有空格的连续的字符,比如 ‘a’,'akkk'. 2.问题分析 从后向前扫描,如果string是以空格‘  ’结尾的,就不用计数, ...

  3. docker的网络基础配置

    一.端口映射实现访问容器 当容器中运行一些网络应用,要让外部访问这些应用时,可以通过-P或-p参数来指定端口映射.当使用-P标记时,Docker会随机映射一个49000~49900的端口至容器内部开放 ...

  4. [翻译] ValueTrackingSlider

    ValueTrackingSlider What is it? A UISlider Subclass that displays live values in a popUpView. It’s i ...

  5. iOS手势处理

    iOS手势处理 iOS手势有着如下几种: UITapGestureRecognizer UIPinchGestureRecognizer UIRotationGestureRecognizer UIS ...

  6. centos7.4应用之KVM

    最小安装系统: 参考博客:https://www.cnblogs.com/chenjiahe/p/5911965.html 辅助命令 yum install make bison flex autom ...

  7. JavaScript数组方法的兼容性写法 汇总:indexOf()、forEach()、map()、filter()、some()、every()

    ECMA Script5中数组方法如indexOf().forEach().map().filter().some()并不支持IE6-8,但是国内依然有一大部分用户使用IE6-8,而以上数组方法又确实 ...

  8. 张高兴的 Windows 10 IoT 开发笔记:无线收发芯片 nRF24L01

    This is a Windows 10 IoT Core project on the Raspberry Pi 2/3, coded by C#. GitHub:https://github.co ...

  9. MySQL管理.md

    用户管理 创建 举例 mysql> create user test@localhost identified by 'password'; Query OK, 0 rows affected ...

  10. linux_bc命令

    bc 命令:     bc 命令是用于命令行计算器. 它类似基本的计算器. 使用这个计算器可以做基本的数学运算. 语法:  语法是      bc [命令开关]命令开关:      -c 仅通过编译. ...