当前位置 博文首页 > meet1992的博客:使用netbeans实现一个简易计算器

    meet1992的博客:使用netbeans实现一个简易计算器

    作者:[db:作者] 时间:2021-09-19 19:18

    package javaapplication1;
    public class 简易计算器 extends javax.swing.JFrame {

    ??? /**
    ???? * Creates new form 简易计算器
    ???? */
    ??? public 简易计算器() {
    ??????? initComponents();
    ??? }
    ???? public String result = "";
    ??? public String flag = "";
    ???? public double[] getNum(String result)
    ??? {
    ??????? if(null==result||result.equals(""))
    ??????????? return null;
    ??????? double[] dTmp = new double[2];
    ??????? int index1 = result.indexOf(flag.substring(0, 1));
    ??????? int index2 = result.indexOf(flag.substring(1,2));
    ??????? System.out.println(flag);
    ??????? dTmp[0] = Double.parseDouble(result.substring(0, index1));
    ??????? dTmp[1] = Double.parseDouble(result.substring(index1+1, index2));
    ???
    ??????? return dTmp;
    ??? }??????????????????????

    ??? private void jButton14ActionPerformed(java.awt.event.ActionEvent evt) {?????????????????????????????????????????
    ??????? // TODO add your handling code here:
    ???????? result = result+"+";
    ??????? jTextField1.setText(result);
    ??????? flag = flag+ "+";
    ??? }????????????????????????????????????????

    ??? private void jButton7ActionPerformed(java.awt.event.ActionEvent evt) {????????????????????????????????????????
    ??????? // TODO add your handling code here:
    ??????? result = result+"5";
    ??????? jTextField1.setText(result);
    ??? }???????????????????????????????????????

    ??? private void jButton2ActionPerformed(java.awt.event.ActionEvent evt) {????????????????????????????????????????
    ??????? // TODO add your handling code here:
    ??????? result = result+"1";
    ??????? jTextField1.setText(result);
    ??? }???????????????????????????????????????

    ??? private void jButton12ActionPerformed(java.awt.event.ActionEvent evt) {?????????????????????????????????????????
    ??????? // TODO add your handling code here:
    ??????? result = result+"2";
    ??????? jTextField1.setText(result);
    ??? }????????????????????????????????????????

    ??? private void jButton8ActionPerformed(java.awt.event.ActionEvent evt) {????????????????????????????????????????
    ??????? // TODO add your handling code here:
    ??????? result = result+"3";
    ??????? jTextField1.setText(result);
    ??? }???????????????????????????????????????

    ??? private void jButton5ActionPerformed(java.awt.event.ActionEvent evt) {????????????????????????????????????????
    ??????? // TODO add your handling code here:
    ??????? result = result+"4";
    ??????? jTextField1.setText(result);
    ??? }???????????????????????????????????????

    ??? private void jButton6ActionPerformed(java.awt.event.ActionEvent evt) {????????????????????????????????????????
    ??????? // TODO add your handling code here:
    ??????? result = result+"6";
    ??????? jTextField1.setText(result);
    ??? }???????????????????????????????????????

    ??? private void jButton9ActionPerformed(java.awt.event.ActionEvent evt) {????????????????????????????????????????
    ??????? // TODO add your handling code here:
    ??????? result = result+"7";
    ??????? jTextField1.setText(result);
    ??? }???????????????????????????????????????

    ??? private void jButton4ActionPerformed(java.awt.event.ActionEvent evt) {????????????????????????????????????????
    ??????? // TODO add your handling code here:
    ??????? result = result+"8";
    ??????? jTextField1.setText(result);
    ??? }???????????????????????????????????????

    ??? private void jButton3ActionPerformed(java.awt.event.ActionEvent evt) {????????????????????????????????????????
    ??????? // TODO add your handling code here:
    ??????? result = result+"9";
    ??????? jTextField1.setText(result);
    ??? }???????????????????????????????????????

    ??? private void jButton10ActionPerformed(java.awt.event.ActionEvent evt) {?????????????????????????????????????????
    ??????? // TODO add your handling code here:
    ??????? result = result+"0";
    ??????? jTextField1.setText(result);
    ??? }????????????????????????????????????????

    ??? private void jButton15ActionPerformed(java.awt.event.ActionEvent evt) {?????????????????????????????????????????
    ??????? // TODO add your handling code here:
    ??????? result = result+"-";
    ??????? jTextField1.setText(result);
    ??????? flag = flag+ "-";
    ??? }????????????????????????????????????????

    ??? private void jButton16ActionPerformed(java.awt.event.ActionEvent evt) {?????????????????????????????????????????
    ??????? // TODO add your handling code here:
    ??????? result = result+"*";
    ??????? jTextField1.setText(result);
    ??????? flag = flag+ "*";
    ??? }????????????????????????????????????????

    ??? private void jButton13ActionPerformed(java.awt.event.ActionEvent evt) {?????????????????????????????????????????
    ??????? // TODO add your handling code here:
    ??????? result = result+"/";
    ??????? jTextField1.setText(result);
    ??????? flag = flag+ "/";
    ??? }????????????????????????????????????????

    ??? private void jButton11ActionPerformed(java.awt.event.ActionEvent evt) {?????????????????????????????????????????
    ??????? // TODO add your handling code here:
    ???????? result = result+"=";
    ??????? jTextField1.setText(result);
    ??????? flag = flag+ "=";
    ??????? double num1 = 0.0;
    ??????? double num2 = 0.0;
    ??????? double num3 =0.0;
    ??????? double dTmp[] = getNum(result);
    ??????? num1 = dTmp[0];
    ??????? num2 = dTmp[1];
    ??????? System.out.println("num1="+num1+"num2="+num2);
    ??????? switch(result.charAt(1))
    ??????? {
    ??????????? case '+':
    ??????????? {
    ??????????????? num3 = num1+num2;
    ??????????????? break;
    ??????????? }
    ??????????? case '-':
    ??????????? {
    ??????????????? num3 = num1-num2;
    ??????????????? break;
    ??????????? }
    ??????????? case '*':
    ??????????? {
    ??????????????? num3 = num1*num2;
    ??????????????? break;
    ??????????? }
    ??????????? case '/':
    ??????????? {
    ??????????????? num3 = num1/num2;
    ??????????????? break;
    ??????????? }
    ??????? }
    ??????? result = result+num3;
    ??????? jTextField1.setText(result);
    ???????
    ???????
    ??? }????????????????????????????????????????

    ??? private void jButton1ActionPerformed(java.awt.event.ActionEvent evt) {????????????????????????????????????????
    ??????? // TODO add your handling code here:
    ??????? jTextField1.setText("");
    ??????? result="";
    ??????? flag="";
    ??? }???
    ??? public static void main(String args[])?{
    ??????? java.awt.EventQueue.invokeLater(new Runnable() {
    ??????????? public void run() {
    ??????????????? new 简易计算器().setVisible(true);
    ??????????? }
    ??????? });
    ??? }

    cs