一、任务目标学会分析“简易计算器”任务的实现思路
根据思路独立完成“简易计算器”的源代码编写、编译和运行
掌握正则表达式来判定数字键或者数据是否合法
掌握String类常用方法的使用,如:contains方法等
掌握Java异常处理机制
熟练掌握Swing包(JTextField控件、JButton控件和控件数组)的使用,以及常用布局方式的使用
掌握GUI开发过程中如何处理组件上发生的界面事件
二、实现思路
2.1 界面布局实现思路根据实验要求,利用GridBagLayout布局将每个组件放在合适的位置,利用GridBagConstraints类中的Insets方法实现组件间隔
利用数组存放每个组件显示的文本
2.2 事件处理实现思路
设计ComputerListener接口继承按钮触发事件ActionListener接口以增加其抽象方法实现将界面事件传至PoliceListen类(PoliceListen类实现接口ComputerListener)做事件处理。
2.3 计算功能实现思路输入合法机制
避免第一位为符号,设置判断当第一位按非数字使不处理
当第一位为零,第二位也为零,设置判断当第一位为零时输入数字无效
避免首位为零,其后出现多个零(即0001),判断该输入的倒数第二位是否为符号,倒数第一位是否为0,在对按钮0。是则不做处理
避免输出数字不合法(多个小数点 即6.6.6),利用循环以符号位为分割线,判该数字是否存在已存在小数点,即每个运算符号后的数字至多存在一个小数点
排除多符号一起串连(即8+*9+6*/5),点击运算符触发事件并判断前一位是否为符号,