如何使用Java对象语言编写一个加减乘除计算器要有代码

用java代码实现一个加减乘除运算计算器~

简单的就分别写4个方

法吧,传入参数,运算

返回数值就好了

我可以不在你的基础上写一个给你么?不过类似,只是名称不一样,我以前写的一个,你要么

下面文件名要为:JiSuanQi.java

import java.awt.*;

import java.awt.event.*;

public class JiSuanQi

{

   String s="",s1=null,s2=null;

   Frame f=new Frame("计算器");

  TextField tf=new TextField(30);

  Panel p1=new Panel();

  Panel p2=new Panel();

  Panel p3=new Panel();

  Button bt1=new Button("=");

  Button bt2=new Button("删除");

  Button[] bt=new Button[16];

  int id=0;

   public static void main(String[] args)

   {

       new JiSuanQi().init();

   }

    public void init()

    {

       f.setBackground(new Color(85,247,253));

       f.setLayout(new BorderLayout(4,4));

       p2.setLayout(new GridLayout(4,4,4,4));

       p3.setLayout(new BorderLayout(4,4));

       f.setResizable(false);

       f.add(p1,BorderLayout.NORTH);

       f.add(p2);

       p3.add(bt2,BorderLayout.NORTH);

       p3.add(bt1);

       p1.add(tf);

       f.add(p3,BorderLayout.EAST);

       String[] b={"1","2","3","+","4","5","6","-","7","8","9","*","0",".","复位","/"};

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

       {

           bt[i]=new Button(b[i]);

           p2.add(bt[i]);

       }

       bt[0].setForeground(Color.blue);

       bt[1].setForeground(Color.blue);

       bt[2].setForeground(Color.blue);

       bt[4].setForeground(Color.blue);

       bt[5].setForeground(Color.blue);

       bt[6].setForeground(Color.blue);

       bt[8].setForeground(Color.blue);

       bt[9].setForeground(Color.blue);

       bt[10].setForeground(Color.blue);

       bt[12].setForeground(Color.blue);

       bt[13].setForeground(Color.blue);

       bt[3].setForeground(Color.red);

       bt[7].setForeground(Color.red);

       bt[11].setForeground(Color.red);

       bt[15].setForeground(Color.red);

       bt[14].setForeground(Color.red);

       bt1.setForeground(Color.red);

       bt2.setForeground(Color.red);

       f.pack();

       f.setVisible(true);

       f.addWindowListener(new WindowAdapter()

       {

          public void windowClosing(WindowEvent e)

          {

             System.exit(0); 

          } 

       }

       );

       bt[0].addActionListener(new ActionListener()

       {

           public void actionPerformed(ActionEvent e)

           {

                 s+=1;

                 s2+=1;

                 tf.setText(s);

           }

       }

       );

          bt[1].addActionListener(new ActionListener()

       {

           public void actionPerformed(ActionEvent e)

           {

                 s+=2;

                 s2+=2;

                 tf.setText(s);

           }

       }

       );

       bt[2].addActionListener(new ActionListener()

       {

           public void actionPerformed(ActionEvent e)

           {

                 s+=3;

                 s2+=3;

                 tf.setText(s);

           }

       }

       );

       bt[4].addActionListener(new ActionListener()

       {

           public void actionPerformed(ActionEvent e)

           {

                 s+=4;

                 s2+=4;

                 tf.setText(s);

           }

       }

       );

       bt[5].addActionListener(new ActionListener()

       {

           public void actionPerformed(ActionEvent e)

           {

                 s+=5;

                 s2+=5;

                 tf.setText(s);

           }

       }

       );

       bt[6].addActionListener(new ActionListener()

       {

           public void actionPerformed(ActionEvent e)

           {

                 s+=6;

                 s2+=6;

                 tf.setText(s);

           }

       }

       );

       bt[8].addActionListener(new ActionListener()

       {

           public void actionPerformed(ActionEvent e)

           {

                 s+=7;

                 s2+=7;

                 tf.setText(s);

           }

       }

       );

       bt[9].addActionListener(new ActionListener()

       {

           public void actionPerformed(ActionEvent e)

           {

                 s+=8;

                 s2+=8;

                 tf.setText(s);

           }

       }

       );

       bt[10].addActionListener(new ActionListener()

       {

           public void actionPerformed(ActionEvent e)

           {

                 s+=9;

                 s2+=9;

                 tf.setText(s);

           }

       }

       );

       bt[12].addActionListener(new ActionListener()

       {

           public void actionPerformed(ActionEvent e)

           {

                 s+=0;

                 s2+=0;

                 tf.setText(s);

           }

       }

       );

       bt[13].addActionListener(new ActionListener()

       {

           public void actionPerformed(ActionEvent e)

           {

                 s+='.';

                 s2+='.';

                 tf.setText(s);

           }

       }

       );

       bt[3].addActionListener(new ActionListener()

       {

           public void actionPerformed(ActionEvent e)

           {

                 s1=s;

                 s+='+';

                 id=1;

                 s2="";

                 tf.setText(s);

           }

       }

       );

       bt[7].addActionListener(new ActionListener()

       {

           public void actionPerformed(ActionEvent e)

           {

                 s1=s;

                 s+='-';

                 id=2;

                 s2="";

                 tf.setText(s);

           }

       }

       );

       bt[11].addActionListener(new ActionListener()

       {

           public void actionPerformed(ActionEvent e)

           {

                 s1=s;

                 s+='*';

                 id=3;

                 s2="";

                 tf.setText(s);

           }

       }

       );

       bt[14].addActionListener(new ActionListener()

       {

           public void actionPerformed(ActionEvent e)

           {

                 s="";

                 s2="";

                 tf.setText(s);

           }

       }

       );

       bt[15].addActionListener(new ActionListener()

       {

           public void actionPerformed(ActionEvent e)

           {

                 s1=s;

                 s+='/';

                 id=4;

                 s2="";

                 tf.setText(s);

           }

       }

       );

       bt1.addActionListener(new ActionListener()

       {

           public void actionPerformed(ActionEvent e)

           {

                 if(id<1) ;

                    else{

                     s+='=';

                     double a=Double.parseDouble(s1);

                     double b=Double.parseDouble(s2);

                     double c=0;

                     switch(id)

                     {

                       case 1:c=a+b; break;

                       case 2:c=a-b; break;

                       case 3:c=a*b; break;

                       case 4:c=a/b; break;

                     }             

                   s+=c;  

                   tf.setText(s);

                   }          

                 s="";s1="";s2="";id=0;

           }

       }

       );

       bt2.addActionListener(new ActionListener()

       {

               public void actionPerformed(ActionEvent e)

               { 

             char[] c1;

             char[] c2=new char[s.length()-1];

             c1=s.toCharArray();

             for(int i=0;i<s.length()-1;i++)

                 c2[i]=c1[i];

             s=s.valueOf(c2); 

             

             

             if(id<1)

             {

                s1=s;

             }

            if(s2.length()>=1)

            {

             char[] c3;

             char[] c4=new char[s2.length()-1];   

             c3=s2.toCharArray();

             for(int i=0;i<s2.length()-1;i++)

             c4[i]=c3[i];

             s2=s2.valueOf(c4);   

             } 

                    tf.setText(s);   

               }

       }

       );

    }

}



新建一个java类,定义加法的方法。定义方式为声明两个变量,然后相加,赋给第三个变量,并使用return返回出来。见下图所示:
如何使用java实现加减乘除运算
在第一步中的java类中,定义减法的方法。定义方式跟加法类似,只要把加法中的“+”号修改为“-”,再修改方法名。见下图所示:
如何使用java实现加减乘除运算
在第一步中的java类中,定义乘法的方法。定义方式为声明两变量相乘并赋值,返回的类型不再是int,一般则定义为double。见下图所示:
如何使用java实现加减乘除运算
在第一步中的java类中,定义除法的方法。与乘法基本一样。除数不能为0,所以要进行判断一下。见下图所示:
如何使用java实现加减乘除运算
最后在main函数中,实例化该java类,并通过实例化的别名点方法名实现调用加减乘除的方法(如:例子中的TestHello test = new TestHello();test.sum(8, 9);),右键运行控制台打印出结果。见下图所示:
如何使用java实现加减乘除运算
补充一下:细心的同学,应该注意到通过实例化的别名点方法名又赋值给另外一个变量,这个也可以省略,直接修改为System.out.println(int sum = test.sum(8, 9));这种方式打印出来。见下图所示:
如何使用java实现加减乘除运算
使用java实现加减乘除已讲述完毕,相信你会成功实现。另外,所有的方法及结果展示,如下图所示:
如何使用java实现加减乘除运算
如何使用java实现加减乘除运算

import java.awt.BorderLayout;
import java.awt.Button;
import java.awt.Container;
import java.awt.Frame;
import java.awt.GridLayout;
import java.awt.Panel;
import java.awt.TextField;
import java.awt.event.ActionEvent;
import java.awt.event.ActionListener;
import java.awt.event.WindowAdapter;
import java.awt.event.WindowEvent;

class CalculatorPanel extends Panel implements ActionListener
{
private final TextField display;
private boolean start=true;
private String op="=";
private double arg=0;

public CalculatorPanel() {
setLayout(new BorderLayout());
display = new TextField("0");
display.setEditable(false);
add(display,"North");
Panel p = new Panel();
p.setLayout(new GridLayout(4,4));
String buttons="789/456*123-0.=+";
for (int i = 0; i < buttons.length(); i++)
{
addButton(p,buttons.substring(i, i+1));
}
add(p,"Center");
}

@Override
public void actionPerformed(ActionEvent evt) {
String s = evt.getActionCommand();
if ('0' <= s.charAt(0) && s.charAt(0) <= '9'|| s.equals("."))
{
if (start)
{
display.setText(s);
} else{
display.setText(display.getText() + s);
}
start = false;
}
else{
if (start){
if (s.equals("-")) {
display.setText(s);
start = false;
}
else
{
op = s;
}

}
else{
double x = Double.parseDouble(display.getText());
calculate(x);
op = s;
start = true;
}
}
}
public void calculate(double n) {
if (op.equals("+")) arg += n;
else if (op.equals("-")) arg -= n;
else if (op.equals("*")) arg *= n;
else if (op.equals("/")) arg /= n;
else if (op.equals("=")) arg = n;
display.setText("" + arg);
}

private void addButton(Container c, String s) {
Button b = new Button(s);
c.add(b);
b.addActionListener(this);
}
}
class CalculatorFrame extends Frame
{

public CalculatorFrame() {
setTitle("Calculator");
setSize(300,200);
setResizable(false);
// pack();

addWindowListener(new WindowAdapter()
{
public void windowClosing(WindowEvent e)
{
System.exit(0);
}
}
);
this.add(new CalculatorPanel());
}

}
public class MyAWTCalculator {
public static void main(String[] args) {
// TODO code application logic here
CalculatorFrame calculatorframe = new CalculatorFrame();
calculatorframe.setVisible(true);
}

}

JAVA语言编写使用Random类对象产生一组字节随机数,并将其存入数据文件da...
答:import java.io.File;import java.io.FileInputStream;import java.io.FileOutputStream;import java.io.IOException;import java.util.Random;public class RandomFile { / param args throws IOException / public static void main(String[] args) throws IOException { // TODO Auto-generated method ...

用java语言写一个用户登陆界面
答://这个是我写的,里面有连接数据库的部分。你可以拿去参考一下import java.awt.*;import javax.swing.*;import java.awt.event.*;import java.sql.*;class LoginFrm extends JFrame implements ActionListener// throws Exception{JLabel lbl1 = new JLabel("用户名:");JLabel lbl2 = new J...

杰出的Java攻城狮,十步必看
答:如果没有面向对象的程序设计系统的坚实基础,就无法实现像Java这样的面向对象编程语言的美妙之处。如果你不能理解面向对象的程序设计系统的独到之处即使你使用面向对象的语言,你也可能知识用一种走流程的方法在编写代码。仅学习面向对象原则的定义是远远不够的。 我们应该知道在以面向对象的方式设计解决方案时如何应用...

求一个随机出题的小程序 用java语言编写
答:package ccut.lxn.BaiduKnows;import java.io.BufferedReader;import java.io.InputStreamReader;import java.util.Random;public class RandomQuestion { public static void main(String[] args) { Random random = new Random();// 声明实例化一个random对象。int a = random.nextInt(50);// 随机...

编程之旅:从入门到进阶
答:一旦你掌握了基础,接下来要进一步学习你选择的语言的高级特性,如STL编程。同时,熟悉并掌握IDE环境,如VC++6.0或VC++.net,会让你的编程之路更加顺畅。拓展学习其他语言当你对所学语言有了深入的理解,学习其他面向对象的语言,如JAVA和C#,将会变得轻而易举。算法与编程思想但请记住,真正的程序员不仅限于编写...

深入理解面向对象与Java的魅力
答:面向对象是编程的基石,而Java作为一种广受欢迎的面向对象编程语言,更是让我们深入理解面向对象的神秘面纱。本文将为你介绍面向对象和Java的基本概念,帮助你更好地理解这个话题。樂对象和类的概念对象是类的实例,每个类都定义了属于它的属性和方法。类是对象的集合,它描述了对象的共有属性和方法,将相似的对象归类到...

JAVA算得上最有前途的编程语言
答:Java是一种广泛使用的计算机编程语言,拥有跨平台、面向对象、泛型编程的特性,广泛应用于企业级Web应用开发和移动应用开发。Java可以编写桌面应用程序、Web应用程序、分布式系统和嵌入式系统应用程序等。功能强大Java不仅吸收了C++语言的各种优点,还摒弃了C++里难以理解的多继承、指针等概念,因此Java语言具有功能强大和简...

编译java程序的命令是什么,运行java应用程序的命令是什么?
答:有几种方法:1、输入命令: pushd 路径(此命令可将当前目录设为所希望的任一个已存在的路径)2、输入命令: e: 转移到e盘,然后再输入 cd 转移到所希望的已知路径。希望在windows命令行下使用javac、java、javap等命令,那么当前电脑必须安装了jdk,并且将jdk的bin目录添加到环境变量path下了。

用java语言编写一个类,该类创建的对象可以计算等差数列的和。_百度知...
答:为您推荐: 汇编语言 c语言 其他类似问题2016-05-20 用java程序编写一个类,该类创建的对象可以计算等差数列的第... 2006-10-23 如何用JAVA编写一个类,该类创建的对象可以计算等差数列的和... 29 2013-06-12 JAVA编程高手进,编写一个类,该类创建的对象可以计算等差数... 6 2015-01-13 java的作业题:...

如何使用java
答:Java语言定义了public、protected、private、abstract、static和final这6常用修饰词外还定义了5个不太常用的修饰词,下面是对这11个Java修饰词的介绍:1.public 使用对象:类、接口、成员 介绍:无论它所处在的包定义在哪,该类(接口、成员)都是可访问的 2.private 使用对象:成员 介绍:成员只可以在...

IT评价网,数码产品家用电器电子设备等点评来自于网友使用感受交流,不对其内容作任何保证

联系反馈
Copyright© IT评价网