Java编写一个计算器程序过程介绍

一、题目

编写一个计算器程序,只有加减乘除功能,当做Applet运行。

二、题目分析与设计

1.     题目的需求。

第一、这个计算器是本人首次编写的计算器程序,功能强大,能胜任较多的计算任务。

第二、这是在java平台上开发的,利用许多包实现多功能化,界面化,还附加了音乐,使使用者能听着美妙的旋律,轻轻松松的计算数据。

第三、完成了这个程序的过程中,查了很多资料,学了很多知识,不仅能用在java上,还能用在c++上,而且对类有了较为深刻的理解。

第四、锻炼了编程能力,在一次次完成作业后,自己的编程能力提高了很多,为以后的作业和任务建立了扎实基础。

2.     界面设计过程、设计上的创意及组件的布局策略。

j

整体上以长宽分别为800,620像素大小建立主窗口;

k

在左上角建立一个music按键用于开关音乐播放;

l

建立两个文本框放在中上的位置,设置为不可编辑,且字号为25,隶书,方便老人或弱视力的人使用;

m

建立checkbox群来换选度与弧度;

n

利用三个panel来布置单目运算区,数字键区,二目运算区,而且把常用的放在习惯的左边区域,且靠近数字键,方便操作;

o

功能有复位,加减乘除,三角函数,反三角函数等数学常用计算。

3.     程序逻辑的实现,包括类的设计、对象的协作过程

 

4.     开发环境:eclipse-SDK-3.7.1

关键代码:主要是用于监听按键,并启动相应的函数计算

publicvoidactionPerformed(ActionEvent e)

    {

        //TODO Auto-generated method stub

       

         Button btn=(Button) e.getSource();

        /关闭打开音乐

        if(btn==musicbutton)

            {

            if(musiccontrol==0)

            {

                audio1.stop();

                musiccontrol=1;

                return ;

            }

            else

            {

               

                musiccontrol=0;

               

                audio1.loop();///反复播放音乐

                return ;

            }

            }

        //1~9的输入

        for (int i = 0; i < 3; i++)

        {

            for (int j = 0; j < 3; j++)

            {

               

               if(Numbutton[i][j]==btn)

               {

                  String str=new String();

                  if(txf1.getText().length()!=0)

                      str=txf1.getText();

                  str=str+((i)*3+j+1);

                  txf1.setText(str);

                  return;

               }

               

            }

        }

        ///0的输入

        if(additionbutton[0][0]==btn)

           {

              String str=new String();

              if(txf1.getText().length()!=0)

                  str=txf1.getText();

              str=str+(0);

              txf1.setText(str);

              return;

           

           }

        右边功能键的响应设置

        for (int i = 0; i < 3; i++)

        {

            for (int j = 0; j < 3; j++)

            {

               

               if(operationbutton[i][j]==btn)

               {

                 String str=new String();

                 if(txf1.getText().length()!=0)

                      str=txf1.getText();

                ///用于退位

                   if(i==0&&j==0&&txf1.getText().length()!=0)

                   

                       char temp[]=newchar[txf1.getText().length()];

                       temp=str.toCharArray();

                       if(txf1.getText().length()-1!=0)

                       str=str.copyValueOf(temp,0,txf1.getText().length()-1);

                       else

                           str="";

                      

                      

                    }

                else

                    if(i==0&&j==1)

                    {

                        清空,复位

                        str="";

                         txf2.setText(str);

                      

  • 5
    点赞
  • 18
    收藏
    觉得还不错? 一键收藏
  • 2
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值