• 大小: 12KB
    文件类型: .java
    金币: 1
    下载: 0 次
    发布日期: 2021-05-26
  • 语言: Java
  • 标签: 计算器  

资源简介

JAVA计算器计算器有点小问题JAVA计算器计算器

资源截图

代码片段和文件信息

/*  App5_5B.java  */
import java.awt.*;
import java.awt.event.*;
import javax.swing.*;

public class App5_5B extends Japplet
{
    JButton numberButton[];                    // 数字键按钮数组
    JButton operationButton[];                 // 运算符号键按钮数组
    JButton radixPointButton;                  // 小数点键按钮
    JButton equalMarkButton;                   // 等号键按钮
    JTextField resultShow;                     // 显示输入数据或计算结果的文本框
    JPanel textPanelbuttonPanel;              // 文本框面板和按钮面板
    String operation = “+-*/“;                 // 运算符号
    double result = 0;                         // 暂存运算结果
    double inputNumber =0;                     // 暂存输入数据
    double leftNumber = 0;                     // 暂存左操作数
    double rightNumber = 0;                    // 暂存右操作数
    String buttonNumberString = ““;            // 暂时存输入的数据串
    char firstChar = ‘@‘;                      // 读取输入的字符
    char operatorChar = ‘@‘;                   // 暂存执行的运算符,初始化‘@‘字符表示即将输入的是第一个操作数
    double radixPointNumber = 1.0;             // 位权,用于处理输入的小数部分
    boolean radixPointFlag = false;            // 输入小数标志,初值为false表示输入整数部分
    boolean inputFlag = false;
    double dataStack[] = new double[3];        // 数据栈,用于暂存输入操作数和计算结果
    int dataStackPointer = 0;                  // 数据栈指针
    char operatorStack[] = new char[3];        // 运算符栈,用于暂存即将计算的运算符
    int operatorStackPointer = 0;              // 运算符栈指针

    public void init( )
    {
        this.resize(260180);
        Container c = getContentPane( );
        // c.setLayout(new BorderLayout( ));                         // 默认为边界布局

        resultShow = new JTextField(“0“23);                         // 创建入数据或计算结果的文本框
        resultShow.setHorizontalAlignment(JTextField.LEFT);          // 设置左靠齐
        resultShow.setForeground(Color.blue);
        resultShow.setFont(new Font(“TimesRoman“Font.PLAIN14));    // 设置字体
        resultShow.setBackground(Color.white);
        resultShow.setEditable(false);
        textPanel = new JPanel( );                                   // 创建文本框面板
        textPanel.add(resultShow);

        resultShow.addKeyListener(new KeyList( ));                   // 注册键盘事件
        resultShow.requestFocus( );                                  // 获取焦点


        numberButton=new JButton[10];                                // 共有10个数字键
        for (int i=0; i<=9; i++)                                     // 创建10个数字键按钮并注册动作事件
        {
            numberButton[i] = new JButton(Integer.toString(i));
            numberButton[i].addActionListener(new ActList( ));       // 注册动作事件
            numberButton[i].setForeground(Color.black);
        }

        operationButton=new JButton[4];                              // 共有4个运算符号
        for (int i=0; i<4; i++)                                      // 创建4个运算符号键按钮并注册动作事件
        {
            operationButton[i] = new JButton(Character.toString(operation.charAt(i)));
            operationButton[i].addActionListener(new ActList(

评论

共有 条评论