软件开发工具课程论文(2)

2019-03-15 19:36

武汉理工大学《软件开发工具》课程论文

text_double=new JTextField(\设置文本区

text_double.setHorizontalAlignment(JTextField.RIGHT);//设置水平对齐方式未右对齐

this.getContentPane().add(text_double,BorderLayout.NORTH);//将文本区添加到Content北部

JPanel panel=new JPanel(new GridLayout(5,4));//在内容窗口添加一个网格布局

this.getContentPane().add(panel);//添加panel面板 for(int i=0;i

for(int i=0;i

button[i].addActionListener(this);//为按钮注册 text_double.setEditable(false);//文本框不可编辑 text_double.addActionListener(this);

this.setVisible(true); }

public void actionPerformed(ActionEvent e) {

String c= e.getActionCommand();//返回与此动作相关的命令字符串。 if(c.equals(\

handleC(); //用户按了“C”键 }

else if (c.equals(\ // 用户按了\键 {

text_double.setText(\ }

else if (\用户按了数字键或者小数点键 {

handleNumber(c); // handlezero(zero); } else //用户按了运算符键

{

handleOperator(c); } }

private void handleC() // 初始化计算器的各种值 {

text_double.setText(\ firstDigit = true;

4

武汉理工大学《软件开发工具》课程论文

operator = \

}

private void handleNumber(String button) { if (firstDigit)//输入的第一个数字 {

text_double.setText(button);

} else if ((button.equals(\输入的是小数点,并且之前没有小数点,则将小数点附在结果文本框的后面

//如果字符串参数作为一个子字符串在此对象中出现,则返回第一个这种子字符串的第一个字符的索引;如果它不作为一个子字符串出现,则返回 -1 {

text_double.setText(text_double.getText() + \

} else if (!button.equals(\ 如果输入的不是小数点,则将数字附在结果文本框的后面

{

text_double.setText(text_double.getText() + button); }

// 以后输入的肯定不是第一个数字了 firstDigit = false; }

private void handleOperator(String button) { if (operator.equals(\// 除法运算

// 如果当前结果文本框中的值等于0 if (getNumberFromText() == 0.0){ // 操作不合法

operateValidFlag = false;

text_double.setText(\除数不能为零\ } else {

resultNum /= getNumberFromText(); }

} else if (operator.equals(\// 加法运算

resultNum += getNumberFromText(); } else if (operator.equals(\// 减法运算

resultNum -= getNumberFromText(); } else if (operator.equals(\

5

武汉理工大学《软件开发工具》课程论文

// 乘法运算

resultNum *= getNumberFromText(); } else if (operator.equals(\// 平方根运算

if(getNumberFromText()<0){ operateValidFlag = false;

text_double.setText(\被开方数不能为负数\ else

resultNum = Math.sqrt(resultNum); }

else if (operator.equals(\// 正数负数运算

resultNum = resultNum * (-1); } else if (operator.equals(\// 赋值运算

resultNum = getNumberFromText(); }

if (operateValidFlag) { // 双精度浮点数的运算 long t1;

double t2;

t1 = (long) resultNum; t2 = resultNum - t1; if (t2 == 0) {

text_double.setText(String.valueOf(t1)); } else {

text_double.setText(String.valueOf(resultNum)); } }

operator = button; //运算符等于用户按的按钮

firstDigit = true;

operateValidFlag = true; }

private double getNumberFromText() //从结果的文本框获取数字 {

double result = 0; try {

result = Double.valueOf(text_double.getText()).doubleValue(); // ValueOf()

6

武汉理工大学《软件开发工具》课程论文

返回表示指定的 double 值的 Double 实例 } catch (NumberFormatException e){ }

return result; }

public static void main(final String[] args) { new Calculator(); } }

8.调试结果截图

(1)加法运算:956+358

(3)乘法运算:556*637

2)减法运算:1628-703

4)除法运算:372/48

7((

武汉理工大学《软件开发工具》课程论文

9.总结体会

任何工作都没有懈怠的理由,看似简单的运算器程序,编译起来确是另一番滋味,需要注意界面的设计,按钮的构造,算法的编程,精度的把握,每一个方面都需要仔细认真的去思考,去实践。失败挫折是难免的,这时需要的就是永不放弃的精神,个人力量有限,但群体的力量强大,所以难免需要请教他人,查阅资料,在此基础上再加上勤加思考,勇于实践,最后终于成功完成计算器程序。这个过程,对于我来说获益匪浅。

参考文献

[1] 李文新、郭炜、余华山. 程序设计导引及实践[M]. 北京:清华大学出版社 [2] 史斌星、史佳. 新编Java实用教程[M]. 北京:清华大学出版社 [3] 辛运帏 饶一梅 张钧. Java程序设计[M]. 北京:清华大学出版社 [4] 李大卓 刘海. Eclipse核心编程[M]. 北京:清华大学出版社

8


软件开发工具课程论文(2).doc 将本文的Word文档下载到电脑 下载失败或者文档不完整,请联系客服人员解决!

下一篇:1010 USP39-NF34 ANALYTICAL DATA INTERPRETATION AND TREATMENT

相关阅读
本类排行
× 注册会员免费下载(下载后可以自由复制和排版)

马上注册会员

注:下载文档有可能“只有目录或者内容不全”等情况,请下载之前注意辨别,如果您已付费且无法下载或内容有问题,请联系我们协助你处理。
微信: QQ: