A. java 图形界面设计制作计算器
import java.awt.*;
import javax.swing.*;
import java.awt.event.*;
import java.text.NumberFormat;
public class JSQ extends JFrame implements ActionListener {
	float i = 0;
	JPanel jp1 = new JPanel();
	JPanel jp2 = new JPanel();
	JPanel jp3 = new JPanel();
	JButton bt1 = new JButton("+");
	JButton bt2 = new JButton("-");
	JButton bt3 = new JButton("*");
	JButton bt4 = new JButton("/");
	JButton bt5 = new JButton("1");
	JButton bt6 = new JButton("2");
	JButton bt7 = new JButton("3");
	JButton bt8 = new JButton("4");
	JButton bt9 = new JButton("5");
	JButton bt10 = new JButton("6");
	JButton bt11 = new JButton("7");
	JButton bt12 = new JButton("8");
	JButton bt13 = new JButton("9");
	JButton bt14 = new JButton("0");
	JButton bt15 = new JButton("=");
	JButton bt16 = new JButton("C");
	JLabel je = new JLabel("0");
	public JSQ() {
		("计算器");
		jp1.setBounds(50, 150, 300, 200);
		jp1.setBackground(new Color(100, 100, 150));
		this.add(jp1);
		jp2.setBounds(50, 40, 300, 30);
		jp2.setBackground(new Color(50, 100, 150));
		this.add(jp2);
		jp2.add(je);
		jp3.setBounds(370, 200, 70, 70);
		jp3.setBackground(new Color(100, 100, 150));
		this.add(jp3);
		jp1.add(bt1);
		jp1.add(bt2);
		jp1.add(bt3);
		jp1.add(bt4);
		jp1.add(bt5);
		jp1.add(bt6);
		jp1.add(bt7);
		jp1.add(bt8);
		jp1.add(bt9);
		jp1.add(bt10);
		jp1.add(bt11);
		jp1.add(bt12);
		jp1.add(bt13);
		jp1.add(bt14);
		jp1.add(bt15);
		bt1.addActionListener(this);
		bt2.addActionListener(this);
		bt3.addActionListener(this);
		bt4.addActionListener(this);
		bt5.addActionListener(this);
		bt6.addActionListener(this);
		bt7.addActionListener(this);
		bt8.addActionListener(this);
		bt9.addActionListener(this);
		bt10.addActionListener(this);
		bt11.addActionListener(this);
		bt12.addActionListener(this);
		bt13.addActionListener(this);
		bt14.addActionListener(this);
		bt15.addActionListener(this);
		bt16.addActionListener(this);
		this.setLayout(null);
		this.setSize(500, 400);
		this.setLocationRelativeTo(null);
		this.setDefaultCloseOperation(JFrame.DISPOSE_ON_CLOSE);
		this.setVisible(true);
	}
	StringBuffer val = new StringBuffer();
	double data = 0;
	char op = '\0';
	boolean isComp = false;
	
	public void actionPerformed(ActionEvent e) {
		JButton b = (JButton) e.getSource();
		char c = b.getText().charAt(0);
		if (Character.isDigit(c)) {
			if (je.getText().equals("0")) {
				if (c != '0') {
					val.append(c);
					setResult(val.toString());
				}
			} else {
				if (isComp) {
					val.delete(0, val.length());
					val.append(c);
					setResult(val.toString());
					isComp = false;
				} else {
					if (!val.toString().equals("0")) {
						val.append(c);
						setResult(val.toString());
					}
				}
			}
		} else if (c == '+' || c == '-' || c == '*' || c == '/') {
			if (op != '\0') {
				isComp = compute();
				op = '\0';
			}
			op = c;
			if (val.length() == 0) {
				data = 0;
			} else {
				data = Double.parseDouble(val.toString());
			}
			val.delete(0, val.length());
			isComp = false;
		} else if (c == '=') {
			isComp = compute();
			op = '\0';
		}
	}
	
	private boolean compute() {
		double data1 = 0;
		if (val.length() == 0) {
			data1 = 0;
		} else {
			data1 = Double.parseDouble(val.toString());
		}
		val.delete(0, val.length());
		switch (op) {
		case '+' :
			val.append(data + data1);
			break;
		case '-' :
			val.append(data - data1);
			break;
		case '*' :
			val.append(data * data1);
			break;
		case '/' :
			if (data1 == 0) {
				val.append(0);
			} else {
				val.append(data / data1);
			}
			break;
		}
		setResult(val.toString());
		return true;
	}
	
	private void setResult(String data) {
		NumberFormat nf = NumberFormat.getInstance();
		nf.setMaximumFractionDigits(16);
		je.setText(nf.format(Double.parseDouble(data)));
	}
}
B. Java程序--编写一个具有图形界面的计算器程序
import java.awt.*;
import java.awt.event.*;
import java.io.*;
public class Test implements ActionListener
{
 Frame f = new Frame("一步运算计算器");//创建窗架
 TextField[] tf = new TextField[3];    
 Label La1 = new Label("+");        
  Button btn = new Button("=");
  int[] a = new int[3];                 //储存数据
  
 public Test()
 {
  f.setLayout(new FlowLayout());
  f.setSize(400,100);
  
  f.addWindowListener
    (
        new WindowAdapter()
        {
          public void windowClosing(WindowEvent e)
          {
            System.exit(0);
          }
        }
    );                                   //窗口关闭事件
          
    btn.addActionListener                //输出加法运算结果
    (
        new ActionListener()
        {
          public void actionPerformed(ActionEvent e)
          {
            tf[2].setText(Integer.toString(a[2]));
          }
        }
    );
    for(int i = 0;i<3;i++)
  {
   tf[i] = new TextField(8);
   tf[i].addActionListener(this);     //创建文本域,注册事件监听器
  }
tf[0].requestFocusInWindow();        //光标定位
    
    f.add(tf[0]);
    f.add(La1);
    f.add(tf[1]);
    f.add(btn);
    f.add(tf[2]);
    f.show();
 }
 
 public void actionPerformed(ActionEvent e)
  {
   try
   {
     if(e.getSource()==tf[0])
   {
     a[0]=Integer.valueOf(tf[0].getText()).intValue();
     tf[1].requestFocusInWindow();
   }
   
   if(e.getSource()==tf[1])
   {
     a[1]=Integer.valueOf(tf[1].getText()).intValue();
     btn.requestFocusInWindow();
   }
   a[2] = a[0]+a[1]; 
  }
  catch(Exception ex)
  {
  }
 }
 
 public static void main(String[] args) throws Exception
 {
  Test t = new Test();
  }
}
在文本域中输入完后必须按Enter才能完成正确的功能.再按等号按钮输出结果.
C. 用JAVA写一个计算器 要求有图形界面。简单的加减乘除,不要小数点运算。
package com;
import javax.swing.*;
import java.awt.*;
import java.awt.event.*;
public class Calculator extends JFrame implements ActionListener{
private static final long serialVersionUID = 8199443193151152362L;
private JButton bto_s=new JButton("sqrt"),bto_zf=new JButton("+/-"),bto_ce=new JButton("CE"),bto_c=new JButton("C"),bto_7=new JButton("7"),
bto_8=new JButton("8"),bto_9=new JButton("9"),bto_chu=new JButton("/"),bto_4=new JButton("4"),bto_5=new JButton("5"),
bto_6=new JButton("6"),bto_cheng=new JButton("*"),bto_1=new JButton("1"),bto_2=new JButton("2"),bto_3=new JButton("3"),
bto_jian=new JButton("-"),bto_0=new JButton("0"),bto_dian=new JButton("."),bto_deng=new JButton("="),bto_jia=new JButton("+");
JButton button[]={bto_s,bto_zf,bto_ce,bto_c,bto_7,bto_8,bto_9,bto_chu,bto_4,bto_5,bto_6,bto_cheng,bto_1,bto_2,bto_3,bto_jian,
    bto_0,bto_dian,bto_deng,bto_jia};
private JTextField text_double;// = new JTextField("0");
private String operator = "="; //当前运算的运算符
private boolean firstDigit = true; // 标志用户按的是否是整个表达式的第一个数字,或者是运算符后的第一个数字
private double resultNum = 0.0; // 计算的中间结果
private boolean operateValidFlag = true; //判断操作是否合法
private JLabel stuno = new JLabel("计算器"); //学号 
private JLabel stuname = new JLabel("计算器"); //姓名
public Calculator()
{
   super("Calculator");
   this.setBounds(300, 300, 300, 320);
   this.setResizable(false);
   this.setBackground(Color.orange);
   this.setDefaultCloseOperation(EXIT_ON_CLOSE);
   this.getContentPane().setLayout(new BorderLayout());//设置布局
   JPanel topPanel = new JPanel(new BorderLayout());
   topPanel.add(stuno,BorderLayout.WEST);
   topPanel.add(stuname,BorderLayout.EAST);
   text_double=new JTextField("0",20);//设置文本区
   text_double.setHorizontalAlignment(JTextField.RIGHT);//设置水平对齐方式未右对齐
   topPanel.add(text_double,BorderLayout.SOUTH);
   this.getContentPane().add(topPanel,BorderLayout.NORTH);//将文本区添加到Content北部
   
   JPanel panel=new JPanel(new GridLayout(5,4));//在内容窗口添加一个网格布局
   this.getContentPane().add(panel);//添加panel面板
   for(int i=0;i<button.length;i++)//在面板上添加按钮
    panel.add(button[i]);
 
   for(int i=0;i<button.length;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();//返回与此动作相关的命令字符串。
   System.out.println("##########command is "+c);
   if(c.equals("C")){
    handleC();           //用户按了“C”键
   }
   else if (c.equals("CE"))       // 用户按了"CE"键
   {
    text_double.setText("0");
   }
   else if ("0123456789.".indexOf(c) >= 0) // 用户按了数字键或者小数点键
   {
    handleNumber(c); // handlezero(zero);
   } else            //用户按了运算符键
   {
               handleOperator(c);
   }
}
private void handleC()       // 初始化计算器的各种值
{
   text_double.setText("0");
   firstDigit = true;
   operator = "=";
   }
private void handleNumber(String button) {
   if (firstDigit)//输入的第一个数字
   {
   text_double.setText(button);
   } else if ((button.equals(".")) && (text_double.getText().indexOf(".") < 0))//输入的是小数点,并且之前没有小数点,则将小数点附在结果文本框的后面
    //如果字符串参数作为一个子字符串在此对象中出现,则返回第一个这种子字符串的第一个字符的索引;如果它不作为一个子字符串出现,则返回 -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("*")){
//   乘法运算
   resultNum *= getNumberFromText();
   } else if (operator.equals("sqrt")) {
//   平方根运算
    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()返回表示指定的 double 值的 Double 实例
   } catch (NumberFormatException e){
   }
   return result;
   }
public static void main(final String[] args) {
new Calculator();
}
}
D. 用java编写一个简单的计算器(包括加减乘除)图形界面
public class ItemEvent事件
{
	public static void main(String args[])
	{
		WindowOperation win=new WindowOperation();
		win.setBounds(100,100,390,360);
		win.setTitle("简单计算器");
	}
}    
import java.awt.event.*;
import javax.swing.*;
public class OperatorListener implements ItemListener
{
	JComboBox choice;
	ComputerListener workTogether;
	public void setJComboBox(JComboBox box)
	{
		choice=box;
	}
	public void setWorkTogether(ComputerListener computer)
	{
		workTogether=computer;
	}
	public void itemStateChanged(ItemEvent e)
	{
		String fuhao=choice.getSelectedItem().toString();
		workTogether.setFuhao(fuhao);
	}
}
E. Java图形界面简单计算器
示例代码如下,请参考:
packagetest.com.test;
importjava.awt.*;
importjava.awt.event.*;
importjavax.swing.*;
publicclassCal{
TextFieldtf=newTextField(40);//显示文本框
StringBuffers1=newStringBuffer();//记录运算数字,以及保留结果
StringBuffers2=newStringBuffer();//记录运算数字,保留上一个输入的数字或运算结果
staticStringflag=newString();//标记运算符号:+,-,*,/
booleanstart=true;//标记运算开始或结束,保证一次运算之后,第二次进行运算时能同时清空显示界面,即s1为空
publicvoidinit(){
//主界面
JFramef=newJFrame("计算器");
JPanelp1=newJPanel();
p1.add(tf);
f.add(p1,BorderLayout.NORTH);
JPanelp2=newJPanel();
p2.setLayout(newGridLayout(1,3));
//动作监听器
ActionListenerlisten=newActionListener(){
publicvoidactionPerformed(ActionEventarg0){
//输入数字0~9
if(arg0.getActionCommand()=="0"){
if(!s1.toString().equals(newString())){
if(!start){
//s1清零,保证可以重新输入数字
s1.delete(0,s1.length());
}
start=true;
tf.setText(s1.append("0").toString());
}
}
if(arg0.getActionCommand()=="1"){
if(!start){
s1.delete(0,s1.length());
}
start=true;
tf.setText(s1.append("1").toString());
}
if(arg0.getActionCommand()=="2"){
if(!start){
s1.delete(0,s1.length());
}
start=true;
tf.setText(s1.append("2").toString());
}
if(arg0.getActionCommand()=="3"){
if(!start){
s1.delete(0,s1.length());
}
start=true;
tf.setText(s1.append("3").toString());
}
if(arg0.getActionCommand()=="4"){
if(!start){
s1.delete(0,s1.length());
}
start=true;
tf.setText(s1.append("4").toString());
}
if(arg0.getActionCommand()=="5"){
if(!start){
s1.delete(0,s1.length());
}
start=true;
tf.setText(s1.append("5").toString());
}
if(arg0.getActionCommand()=="6"){
if(!start){
s1.delete(0,s1.length());
}
start=true;
tf.setText(s1.append("6").toString());
}
if(arg0.getActionCommand()=="7"){
if(!start){
s1.delete(0,s1.length());
}
start=true;
tf.setText(s1.append("7").toString());
}
if(arg0.getActionCommand()=="8"){
if(!start){
s1.delete(0,s1.length());
}
start=true;
tf.setText(s1.append("8").toString());
}
if(arg0.getActionCommand()=="9"){
if(!start){
s1.delete(0,s1.length());
}
start=true;
tf.setText(s1.append("9").toString());
}
//输入小数点
if(arg0.getActionCommand()=="."){
if(!start){
s1.delete(0,s1.length());
}
start=true;
if(s1.toString().equals(newString()))
tf.setText(s1.append("0.").toString());
elseif(s1.length()==1&&s1.charAt(0)=='-')
tf.setText(s1.append("0.").toString());
else
tf.setText(s1.append(".").toString());
}
//输入负号
if(arg0.getActionCommand()=="+/-"){
if(!start){
s1.delete(0,s1.length());
}
start=true;
if(s1.toString().equals(newString()))
tf.setText(s1.append('-').toString());
}
//退格Backspace
if(arg0.getActionCommand()=="Backspace"){
start=true;
if(s1.length()!=0){
//删除最后输入的一位
s1.deleteCharAt(s1.length()-1);
tf.setText(s1.toString());
}
}
//归零CE
if(arg0.getActionCommand()=="CE"){
//清空所有,start标记设为true
start=true;
s1.delete(0,s1.length());
s2.delete(0,s2.length());
tf.setText(s1.toString());
}
//清除C
if(arg0.getActionCommand()=="C"){
//清空当前输入,即s1清零
start=true;
s1.delete(0,s1.length());
tf.setText(s1.toString());
}
//加号
if(arg0.getActionCommand()=="+"){
start=true;
flag="+";
//s2接收s1的值
s2.append(String.valueOf(s1.toString()));
//s1清零,重新接收下一个数据
s1.delete(0,s1.length());
tf.setText(s1.toString());
}
//减号
if(arg0.getActionCommand()=="-"){
start=true;
flag="-";
s2.append(String.valueOf(s1.toString()));
s1.delete(0,s1.length());
tf.setText(s1.toString());
}
//乘号
if(arg0.getActionCommand()=="*"){
start=true;
flag="*";
s2.append(String.valueOf(s1.toString()));
s1.delete(0,s1.length());
tf.setText(s1.toString());
}
//除号
if(arg0.getActionCommand()=="/"){
start=true;
flag="/";
s2.append(String.valueOf(s1.toString()));
s1.delete(0,s1.length());
tf.setText(s1.toString());
}
//开根号
if(arg0.getActionCommand()=="sqrt"){
start=false;
doubles=Double.parseDouble(s1.toString());
s1.delete(0,s1.length());
tf.setText(s1.append(String.valueOf(Math.sqrt(s))).toString());
}
//求%
if(arg0.getActionCommand()=="%"){
start=false;
doubles=Double.parseDouble(s1.toString());
s1.delete(0,s1.length());
tf.setText(s1.append(String.valueOf(s/100)).toString());
}
//求1/x
if(arg0.getActionCommand()=="1/x"&&!s1.toString().equals(newString())&&Double.parseDouble(s1.toString())!=0){
start=false;
doubles=Double.parseDouble(s1.toString());
s1.delete(0,s1.length());
tf.setText(s1.append(String.valueOf(1/s)).toString());
}
//求结果
if(arg0.getActionCommand()=="="&&s1.length()!=0&&s2.length()!=0){
//start标记为false
start=false;
//分别获取s1和s2的值
doubles4=Double.parseDouble(s1.toString());
doubles3=Double.parseDouble(s2.toString());
//清空s1和s2,便于开始下一次运算
s1.delete(0,s1.length());
s2.delete(0,s2.length());
//四则运算
if(flag=="+"){
tf.setText(s1.append(String.valueOf(s3+s4)).toString());
}
if(flag=="-"){
tf.setText(s1.append(String.valueOf(s3-s4)).toString());
}
if(flag=="*"){
tf.setText(s1.append(String.valueOf(s3*s4)).toString());
}
if(flag=="/"){
tf.setText(s1.append(String.valueOf(s3/s4)).toString());
}
}
}
};
//添加按钮以及监听器
JButtonbks=newJButton("Backspace");
bks.addActionListener(listen);
JButtonce=newJButton("CE");
ce.addActionListener(listen);
JButtonc=newJButton("C");
c.addActionListener(listen);
p2.add(bks);
p2.add(ce);
p2.add(c);
f.add(p2);
JPanelp3=newJPanel();
p3.setLayout(newGridLayout(4,5));
JButtonb1=newJButton("7");
p3.add(b1);
b1.addActionListener(listen);
JButtonb2=newJButton("8");
p3.add(b2);
b2.addActionListener(listen);
JButtonb3=newJButton("9");
p3.add(b3);
b3.addActionListener(listen);
JButtonb4=newJButton("/");
p3.add(b4);
b4.addActionListener(listen);
JButtonb5=newJButton("sqrt");
p3.add(b5);
b5.addActionListener(listen);
JButtonb6=newJButton("4");
p3.add(b6);
b6.addActionListener(listen);
JButtonb7=newJButton("5");
p3.add(b7);
b7.addActionListener(listen);
JButtonb8=newJButton("6");
p3.add(b8);
b8.addActionListener(listen);
JButtonb9=newJButton("*");
p3.add(b9);
b9.addActionListener(listen);
JButtonb10=newJButton("%");
p3.add(b10);
b10.addActionListener(listen);
JButtonb11=newJButton("1");
p3.add(b11);
b11.addActionListener(listen);
JButtonb12=newJButton("2");
p3.add(b12);
b12.addActionListener(listen);
JButtonb13=newJButton("3");
p3.add(b13);
b13.addActionListener(listen);
JButtonb14=newJButton("-");
p3.add(b14);
b14.addActionListener(listen);
JButtonb15=newJButton("1/x");
p3.add(b15);
b15.addActionListener(listen);
JButtonb16=newJButton("0");
p3.add(b16);
b16.addActionListener(listen);
JButtonb17=newJButton("+/-");
p3.add(b17);
b17.addActionListener(listen);
JButtonb18=newJButton(".");
p3.add(b18);
b18.addActionListener(listen);
JButtonb19=newJButton("+");
p3.add(b19);
b19.addActionListener(listen);
JButtonb20=newJButton("=");
p3.add(b20);
b20.addActionListener(listen);
f.add(p3,BorderLayout.SOUTH);
f.setDefaultCloseOperation(JFrame.DISPOSE_ON_CLOSE);
f.pack();
f.setVisible(true);
}
publicstaticvoidmain(Stringargs[]){
//调用方法,实现计算器
newCal().init();
}
}
F. java怎么做图形界面计算器
给每一个按钮添加监听器,界面上应该会有一个Textfield的位置,你点击了什么按钮,就在对应的按钮上添加相应的运算,总之简单的计算在java中调用math.里面的函数就够了,其实你只要明白,你点击按钮是外部,其实内部需要你在监听器里面进行操作,把你点击的意思最终反应在界面上面的Textfield上
G. java图形用户界面设计计算器
这是我以前写的计算器。。。你自己运行看看
package com.jisuanqi.demo;
import java.awt.*;
import java.awt.event.*;
public class Calculator extends WindowAdapter implements ActionListener {
	private double result = 0, data1 = 0, radixPointDepth = 1;
	private boolean radixPointIndicate = false, resultIndicate = false;
	private char prec = '+';
	private Frame f;
	private TextField tf;
	private Button b1, b2, b3, b4, b5, b6, b7, b8, b9, b10, b11, b12, b13, b14,
			b15, b16, b17;
	private Panel p;
	public static void main(String args[]) {
		Calculator de = new Calculator();
//		de.go();
	}
	public  Calculator() {
		f = new Frame("计算器");
		p = new Panel();
		p.setLayout(new GridLayout(4, 4));
		tf = new TextField(30);
		b1 = new Button("7");
		b2 = new Button("8");
		b3 = new Button("9");
		b4 = new Button("+");
		b5 = new Button("4");
		b6 = new Button("5");
		b7 = new Button("6");
		b8 = new Button("-");
		b9 = new Button("1");
		b10 = new Button("2");
		b11 = new Button("3");
		b12 = new Button("*");
		b13 = new Button("0");
		b14 = new Button(".");
		b15 = new Button("=");
		b16 = new Button("/");
		b17 = new Button("清零");
		f.add(tf, "North");
		f.add(p, "Center");
		f.add(b17, "South");
		p.add(b1);
		p.add(b2);
		p.add(b3);
		p.add(b4);
		p.add(b5);
		p.add(b6);
		p.add(b7);
		p.add(b8);
		p.add(b9);
		p.add(b10);
		p.add(b11);
		p.add(b12);
		p.add(b13);
		p.add(b14);
		p.add(b15);
		p.add(b16);
		b1.addActionListener(this);
		b2.addActionListener(this);
		b3.addActionListener(this);
		b4.addActionListener(this);
		b5.addActionListener(this);
		b6.addActionListener(this);
		b7.addActionListener(this);
		b8.addActionListener(this);
		b9.addActionListener(this);
		b10.addActionListener(this);
		b11.addActionListener(this);
		b12.addActionListener(this);
		b13.addActionListener(this);
		b14.addActionListener(this);
		b15.addActionListener(this);
		b16.addActionListener(this);
		b17.addActionListener(this);
		f.addWindowListener(this);
		f.setBounds(500,200,250, 190);
		f.setVisible(true);
	}
	public void actionPerformed(ActionEvent e) {
		String s;
		s = e.getActionCommand();
		switch (s.charAt(0)) {
		case '0':
		case '1':
		case '2':
		case '3':
		case '4':
		case '5':
		case '6':
		case '7':
		case '8':
		case '9':
			if (resultIndicate) {
				result = 0;
				data1 = 0;
				prec = '+';
			}
			Integer Int1 = new Integer(s);
			if (radixPointIndicate) {
				radixPointDepth = radixPointDepth / 10;
				data1 = data1 + (Int1.intValue()) * radixPointDepth;
			} else {
				data1 = data1 * 10 + (Int1.intValue());
			}
			Double displayNumber = new Double(data1);
			tf.setText(displayNumber.toString());
			resultIndicate = false;
			break;
		case '+':
		case '-':
		case '*':
		case '/':
		case '=':
			if (s.charAt(0) != '=' && resultIndicate) {
				prec = s.charAt(0);
				resultIndicate = false;
			} else {
				switch (prec) {
				case '+':
					result = result + data1;
					break;
				case '-':
					result = result - data1;
					break;
				case '*':
					result = result * data1;
					break;
				case '/':
					result = result / data1;
					break;
				}
			}
			radixPointIndicate = false;
			radixPointDepth = 1;
			displayNumber = new Double(result);
			tf.setText(displayNumber.toString());
			if (s.charAt(0) != '=') {
				data1 = 0;
				prec = s.charAt(0);
			} else {
				resultIndicate = true;
			}
			break;
		case '.':
			radixPointIndicate = true;
			break;
		}
		if (s.equals("清零")) {
			result = 0;
			data1 = 0;
			radixPointDepth = 1;
			tf.setText("0.0");
		}
	}
	public void windowClosing(WindowEvent e) {
		System.exit(0);
	}
}
H. 用Java设计一个图形界面(GUI)的计算器应用程序,完成简单的算术运算
下午发 
五分钟搞定,先给你发个简单的,照例子自己去做你想要的计算器
package aaa;
import java.awt.*;
import java.awt.event.*;
import javax.swing.*;
public class YunSuan implements ActionListener,ItemListener
{
 public static JFrame jf;
 public static Container c;
 public static JTextField jtf1,jtf2,jtf3;
 public static JButton jb1;
 public static Choice c2;
 
 public static String fuhao=""; 
public YunSuan()
 {
  jf=new JFrame("加减乘除运算");
  c=jf.getContentPane();
  c.setLayout(new FlowLayout());
  jtf1=new JTextField(10);
  jtf2=new JTextField(10);
  jtf3=new JTextField(10);
  c2=new Choice();
  jb1=new JButton("=");
  
 }
 
 public void Jiemian()
 {
 
  c.add(jtf1);
  c2.addItemListener(this);
  c2.add("");
  c2.add("+");
  c2.add("-");
  c2.add("*");
  c2.add("/");
  c.add(c2);
  c.add(jtf2);
  jb1.addActionListener(this);
  c.add(jb1);
  c.add(jtf3);
  
  jf.setLocation(200,100);
  jf.setVisible(true);
  jf.pack();
 }
 public static void main(String args[])
 {
  YunSuan ys=new YunSuan();
  ys.Jiemian();
 }
public void actionPerformed(ActionEvent e) {
  // TODO Auto-generated method stub
  double s1=Integer.parseInt(jtf1.getText());
  double s2=Integer.parseInt(jtf2.getText());
  double result=0;
  if(fuhao.equals("+"))
  {
   result=s1+s2;
   String result2=String.valueOf(result);
   jtf3.setText(result2);
  }
  if(fuhao.equals("-"))
  {
   result=s1-s2;
   String result2=String.valueOf(result);
   jtf3.setText(result2);
  }
  if(fuhao.equals("*"))
  {
   result=s1*s2;
   String result2=String.valueOf(result);
   jtf3.setText(result2);
  }
  if(fuhao.equals("/"))
  {
   result=s1/s2;
   String result2=String.valueOf(result);
   jtf3.setText(result2);
  }
 }
public void itemStateChanged(ItemEvent ie)
     {
      if(ie.getSource()==c2)
      {
       String str1=c2.getSelectedItem();
       fanhui(str1);
      }
     }
     public  String fanhui(String str2)
     {
      return fuhao=str2;
     }
}
I. java图形化界面编计算器问题
import java.awt.*; 
import java.awt.event.*; 
import javax.swing.*; 
public class Calculator 
{ 
public static void main(String[] args) 
{ 
CalculatorFrame frame = new CalculatorFrame(); 
frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE); 
frame.setSize(200,200); 
frame.setVisible(true); 
} 
} 
class CalculatorFrame extends JFrame 
{ 
public CalculatorFrame() 
{ 
setTitle("Calculator"); 
CalculatorPanel panel = new CalculatorPanel(); 
add(panel); 
pack(); 
} 
} 
class CalculatorPanel extends JPanel 
{ 
private JLabel display; 
private JPanel panel; 
private double result; 
private String lastCommand; 
private boolean start; 
public CalculatorPanel() 
{ 
setLayout(new BorderLayout()); 
result = 0; 
lastCommand = "="; 
start = true; 
display = new JLabel("0",JLabel.RIGHT); 
display.setEnabled(false); 
add(display, BorderLayout.NORTH); 
ActionListener insert = new InsertAction(); 
ActionListener command = new CommandAction(); 
panel = new JPanel(); 
panel.setLayout(new GridLayout(4, 4)); 
addButton("7", insert); 
addButton("8", insert); 
addButton("9", insert); 
addButton("+", command); 
addButton("4", insert); 
addButton("5", insert); 
addButton("6", insert); 
addButton("-", command); 
addButton("1", insert); 
addButton("2", insert); 
addButton("3", insert); 
addButton("*", command); 
addButton("0", insert); 
addButton(".", insert); 
addButton("=", command); 
addButton("/", command); 
add(panel, BorderLayout.CENTER); 
} 
private void addButton(String label, ActionListener listener) 
{ 
JButton button = new JButton(label); 
button.addActionListener(listener); 
panel.add(button); 
} 
private class InsertAction implements ActionListener 
{ 
public void actionPerformed(ActionEvent event) 
{ 
String input = event.getActionCommand(); 
if (start) 
{ 
display.setText(""); 
start = false; 
} 
display.setText(display.getText() + input); 
} 
} 
private class CommandAction implements ActionListener 
{ 
public void actionPerformed(ActionEvent event) 
{ 
String command = event.getActionCommand(); 
if (start) 
{ 
if (command.equals("-")) 
{ 
display.setText(command); 
start = false; 
} 
else 
lastCommand = command; 
} 
else 
{ 
calculate(Double.parseDouble(display.getText())); 
lastCommand = command; 
start = true; 
} 
} 
} 
public void calculate(double x) 
{ 
if (lastCommand.equals("+")) result += x; 
else if (lastCommand.equals("-")) result -= x; 
else if (lastCommand.equals("*")) result *= x; 
else if (lastCommand.equals("/")) result /= x; 
else if (lastCommand.equals("=")) result = x; 
display.setText("" + result); 
} 
} 
给你参考下 ,我最近写的
J. JAVA图形用户界面设计一个简易计算器
下午发 
五分钟搞定,先给你发个简单的,照例子自己去做你想要的计算器
package aaa;
import java.awt.*;
import java.awt.event.*;
import javax.swing.*;
public class YunSuan implements ActionListener,ItemListener
{
 public static JFrame jf;
 public static Container c;
 public static JTextField jtf1,jtf2,jtf3;
 public static JButton jb1;
 public static Choice c2;
 
 public static String fuhao=""; 
public YunSuan()
 {
  jf=new JFrame("加减乘除运算");
  c=jf.getContentPane();
  c.setLayout(new FlowLayout());
  jtf1=new JTextField(10);
  jtf2=new JTextField(10);
  jtf3=new JTextField(10);
  c2=new Choice();
  jb1=new JButton("=");
  
 }
 
 public void Jiemian()
 {
 
  c.add(jtf1);
  c2.addItemListener(this);
  c2.add("");
  c2.add("+");
  c2.add("-");
  c2.add("*");
  c2.add("/");
  c.add(c2);
  c.add(jtf2);
  jb1.addActionListener(this);
  c.add(jb1);
  c.add(jtf3);
  
  jf.setLocation(200,100);
  jf.setVisible(true);
  jf.pack();
 }
 public static void main(String args[])
 {
  YunSuan ys=new YunSuan();
  ys.Jiemian();
 }
public void actionPerformed(ActionEvent e) {
  // TODO Auto-generated method stub
  double s1=Integer.parseInt(jtf1.getText());
  double s2=Integer.parseInt(jtf2.getText());
  double result=0;
  if(fuhao.equals("+"))
  {
   result=s1+s2;
   String result2=String.valueOf(result);
   jtf3.setText(result2);
  }
  if(fuhao.equals("-"))
  {
   result=s1-s2;
   String result2=String.valueOf(result);
   jtf3.setText(result2);
  }
  if(fuhao.equals("*"))
  {
   result=s1*s2;
   String result2=String.valueOf(result);
   jtf3.setText(result2);
  }
  if(fuhao.equals("/"))
  {
   result=s1/s2;
   String result2=String.valueOf(result);
   jtf3.setText(result2);
  }
 }
public void itemStateChanged(ItemEvent ie)
     {
      if(ie.getSource()==c2)
      {
       String str1=c2.getSelectedItem();
       fanhui(str1);
      }
     }
     public  String fanhui(String str2)
     {
      return fuhao=str2;
     }
}