您好,欢迎光临本网站![请登录][注册会员]  
文件名称: java计算器
  所属分类: Java
  开发工具:
  文件大小: 4kb
  下载次数: 0
  上传时间: 2015-04-30
  提 供 者: wuxi****
 详细说明: java做的小型计算器,大家多提意见 import java.awt.*; import java.awt.event.*; import javax.swing.*; /** * A simple calculator program. *

I saw this program in a QQ group, and help a friend correct it.

* * @author Singyuen Yip * @version 1.00 12/29/2009 * @see JFrame * @see ActionListener */ public class JCalculator extends JFrame implements ActionListener { /** * Serial Version UID */ private static final long serialVersionUID = -169068472193786457L; /** * This class help close the Window . * @author Singyuen Yip * */ private class WindowCloser extends WindowAdapter { public void windowClosing(WindowEvent we) { System.exit(0); } } int i; // Strings for Digit & Operator buttons. private final String[] str = { "7", "8", "9", "/", "4", "5", "6", "*", "1", "2", "3", "-", ".", "0", "=", "+" }; // Build buttons. JButton[] buttons = new JButton[str.length]; // For cancel or reset. JButton reset = new JButton("CE"); // Build the text field to show the result. JTextField display = new JTextField("0"); /** * Constructor without parameters. */ public JCalculator() { super("Calculator"); // Add a panel. JPanel panel1 = new JPanel(new GridLayout(4, 4)); // panel1.setLayout(new GridLayout(4,4)); for (i = 0; i < str.length; i++) { buttons[i] = new JButton(str[i]); panel1.add(buttons[i]); } JPanel panel2 = new JPanel(new BorderLayout()); // panel2.setLayout(new BorderLayout()); panel2.add("Center", display); panel2.add("East", reset); // JPanel panel3 = new Panel(); getContentPane().setLayout(new BorderLayout()); getContentPane().add("North", panel2); getContentPane().add("Center", panel1); // Add action listener for each digit & operator button. for (i = 0; i < str.length; i++) buttons[i].addActionListener(this); // Add listener for "reset" button. reset.addActionListener(this); // Add listener for "display" button. display.addActionListener(this); // The "close" button "X". addWindowListener(new WindowCloser()); // Initialize the window size. setSize(800, 800); // Show the window. // show(); Using show() while JDK version is below 1.5. setVisible(true); // Fit the certain size. pack(); } public void actionPerformed(ActionEvent e) { Object target = e.getSource(); String label = e.getActionCommand(); if (target == reset) handleReset(); else if ("0123456789.".indexOf(label) > 0) handleNumber(label); else handleOperator(label); } // Is the first digit pressed? boolean isFirstDigit = true; /** * Number handling. * @param key the key of the button. */ public void handleNumber(String key) { if (isFirstDigit) display.setText(key); else if ((key.equals(".")) && (display.getText().indexOf(".") < 0)) display.setText(display.getText() + "."); else if (!key.equals(".")) display.setText(display.getText() + key); isFirstDigit = false; } /** * Reset the calculator. */ public void handleReset() { display.setText("0"); isFirstDigit = true; operator = "="; } double number = 0.0; String operator = "="; /** * Handling the operation. * @param key pressed operator's key. */ public void handleOperator(String key) { if (operator.equals("+")) number += Double.valueOf(display.getText()); else if (operator.equals("-")) number -= Double.valueOf(display.getText()); else if (operator.equals("*")) number *= Double.valueOf(display.getText()); else if (operator.equals("/")) number /= Double.valueOf(display.getText()); else if (operator.equals("=")) number = Double.valueOf(display.getText()); display.setText(String.valueOf(number)); operator = key; isFirstDigit = true; } public static void main(String[] args) { new JCalculator(); } } ...展开收缩
(系统自动生成,下载前可以参看下载内容)

下载文件列表

相关说明

  • 本站资源为会员上传分享交流与学习,如有侵犯您的权益,请联系我们删除.
  • 本站是交换下载平台,提供交流渠道,下载内容来自于网络,除下载问题外,其它问题请自行百度
  • 本站已设置防盗链,请勿用迅雷、QQ旋风等多线程下载软件下载资源,下载后用WinRAR最新版进行解压.
  • 如果您发现内容无法下载,请稍后再次尝试;或者到消费记录里找到下载记录反馈给我们.
  • 下载后发现下载的内容跟说明不相乎,请到消费记录里找到下载记录反馈给我们,经确认后退回积分.
  • 如下载前有疑问,可以通过点击"提供者"的名字,查看对方的联系方式,联系对方咨询.
 相关搜索: java计算器
 输入关键字,在本站1000多万海量源码库中尽情搜索: