java簡(jiǎn)便計(jì)算器代碼 java編寫(xiě)一個(gè)簡(jiǎn)易計(jì)算器程序

用java實(shí)現(xiàn)一個(gè)簡(jiǎn)單的計(jì)算器。

/*

主要從事網(wǎng)頁(yè)設(shè)計(jì)、PC網(wǎng)站建設(shè)(電腦版網(wǎng)站建設(shè))、wap網(wǎng)站建設(shè)(手機(jī)版網(wǎng)站建設(shè))、自適應(yīng)網(wǎng)站建設(shè)、程序開(kāi)發(fā)、微網(wǎng)站、微信小程序定制開(kāi)發(fā)等,憑借多年來(lái)在互聯(lián)網(wǎng)的打拼,我們?cè)诨ヂ?lián)網(wǎng)網(wǎng)站建設(shè)行業(yè)積累了豐富的網(wǎng)站制作、成都網(wǎng)站建設(shè)、網(wǎng)絡(luò)營(yíng)銷(xiāo)經(jīng)驗(yàn),集策劃、開(kāi)發(fā)、設(shè)計(jì)、營(yíng)銷(xiāo)、管理等多方位專業(yè)化運(yùn)作于一體,具備承接不同規(guī)模與類(lèi)型的建設(shè)項(xiàng)目的能力。

* @(#)JCalculator.java 1.00 06/17/2015

*/

import?java.awt.*;

import?java.awt.event.*;

import?javax.swing.*;

/**

* A simple calculator program.

*?pI saw this program in a QQ group, and help a friend correct it./p

*

*?@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();

}

}

運(yùn)行界面:

求大神發(fā)個(gè)完整簡(jiǎn)單的java計(jì)算器代碼,

public static void main(String[] args) {

System.out.println("簡(jiǎn)單計(jì)算器");

boolean flag=true;//while循環(huán)是否繼續(xù),true繼續(xù)循環(huán),false停止循環(huán)

System.out.println("請(qǐng)輸入第一個(gè)數(shù)字");

while(flag){

Scanner scan = new Scanner(System.in);

String bh=scan.next();

try {

double num = Double.parseDouble(bh);

System.out.println("請(qǐng)輸入符號(hào)(+、-、*、/)");

while(1==1){

String fh=scan.next();

if("+".equals(fh) || "-".equals(fh) || "*".equals(fh) || "/".equals(fh)){

System.out.println("請(qǐng)輸入第二個(gè)數(shù)字");

while(1==1){

String bh2=scan.next();

try {

double num2 = Double.parseDouble(bh2);

double num3=0;

if("+".equals(fh)){

num3=num+num2;

}else if("-".equals(fh)){

num3=num-num2;

}else if("*".equals(fh)){

num3=num*num2;

}else if("/".equals(fh)){

num3=num/num2;

}

System.out.println(num3);

break;

} catch (Exception e) {

System.out.println("請(qǐng)輸入第二個(gè)正確的數(shù)字");

continue;

}

}

break;

}else{

System.out.println("請(qǐng)輸入正確的符號(hào)(+、-、*、/)");

continue;

}

}

System.out.println("是否繼續(xù)運(yùn)算:輸入Y或者y繼續(xù),輸入其它任意字符退出");

String yn=scan.next();

if("Y".equals(yn) || "y".equals(yn)){

continue;

}else{

System.out.println("運(yùn)算結(jié)束");

break;

}

}catch (NumberFormatException e) {//輸入非數(shù)字類(lèi)型時(shí)

System.out.println("請(qǐng)輸入第一個(gè)正確的數(shù)字");

continue;

}

}

}

求JAVA簡(jiǎn)易計(jì)算器代碼。

import javax.swing.SwingUtilities;

import javax.swing.JPanel;

import javax.swing.JFrame;

import javax.swing.JTextField;

import java.awt.Rectangle;

import javax.swing.JButton;

public class Calculator extends JFrame {

private static final long serialVersionUID = 1L;

private JPanel jContentPane = null;

private JTextField jTextField = null;

private JButton jButton = null;

private JButton jButton1 = null;

private JButton jButton2 = null;

private JButton jButton3 = null;

private JButton jButton4 = null;

private JButton jButton5 = null;

private JButton jButton6 = null;

private JButton jButton7 = null;

private JButton jButton8 = null;

private JButton jButton9 = null;

private JButton jButton10 = null;

private JButton jButton11 = null;

private JButton jButton12 = null;

private JButton jButton13 = null;

private JButton jButton14 = null;

private double first = 0;

private double second = 0;

private JButton jButton15 = null;

private JButton jButton16 = null;

private String way = "";

private double result = 0;

private char[] ch = new char[12];

private int i = 0;

/**

* This method initializes jTextField

*

* @return javax.swing.JTextField

*/

private JTextField getJTextField() {

if (jTextField == null) {

jTextField = new JTextField("0");

jTextField.setBounds(new Rectangle(60, 15, 234, 31));

jTextField.setHorizontalAlignment(JTextField.RIGHT);

}

return jTextField;

}

/**

* This method initializes jButton

*

* @return javax.swing.JButton

*/

private JButton getJButton() {

if (jButton == null) {

jButton = new JButton();

jButton.setBounds(new Rectangle(62, 74, 44, 37));

jButton.setText("1");

jButton.addActionListener(new java.awt.event.ActionListener() {

public void actionPerformed(java.awt.event.ActionEvent e) {

ch[i] = '1';

jTextField.setText(new String(ch).trim());

i++;

}

});

}

return jButton;

}

/**

* This method initializes jButton1

*

* @return javax.swing.JButton

*/

private JButton getJButton1() {

if (jButton1 == null) {

jButton1 = new JButton();

jButton1.setBounds(new Rectangle(119, 74, 44, 37));

jButton1.setText("2");

jButton1.addActionListener(new java.awt.event.ActionListener() {

public void actionPerformed(java.awt.event.ActionEvent e) {

ch[i] = '2';

jTextField.setText(new String(ch).trim());

i++;

}

});

}

return jButton1;

}

/**

* This method initializes jButton2

*

* @return javax.swing.JButton

*/

private JButton getJButton2() {

if (jButton2 == null) {

jButton2 = new JButton();

jButton2.setBounds(new Rectangle(176, 74, 44, 37));

jButton2.setText("3");

jButton2.addActionListener(new java.awt.event.ActionListener() {

public void actionPerformed(java.awt.event.ActionEvent e) {

ch[i] = '3';

jTextField.setText(new String(ch).trim());

i++;

}

});

}

return jButton2;

}

/**

* This method initializes jButton3

*

* @return javax.swing.JButton

*/

private JButton getJButton3() {

if (jButton3 == null) {

jButton3 = new JButton();

jButton3.setBounds(new Rectangle(62, 129, 44, 37));

jButton3.setText("4");

jButton3.addActionListener(new java.awt.event.ActionListener() {

public void actionPerformed(java.awt.event.ActionEvent e) {

ch[i] = '4';

jTextField.setText(new String(ch).trim());

i++;

}

});

}

return jButton3;

}

/**

* This method initializes jButton4

*

* @return javax.swing.JButton

*/

private JButton getJButton4() {

if (jButton4 == null) {

jButton4 = new JButton();

jButton4.setBounds(new Rectangle(119, 129, 44, 37));

jButton4.setText("5");

jButton4.addActionListener(new java.awt.event.ActionListener() {

public void actionPerformed(java.awt.event.ActionEvent e) {

ch[i] = '5';

jTextField.setText(new String(ch).trim());

i++;

}

});

}

return jButton4;

}

/**

* This method initializes jButton5

*

* @return javax.swing.JButton

*/

private JButton getJButton5() {

if (jButton5 == null) {

jButton5 = new JButton();

jButton5.setBounds(new Rectangle(176, 129, 44, 37));

jButton5.setText("6");

jButton5.addActionListener(new java.awt.event.ActionListener() {

public void actionPerformed(java.awt.event.ActionEvent e) {

ch[i] = '6';

jTextField.setText(new String(ch).trim());

i++;

}

});

}

return jButton5;

}

/**

* This method initializes jButton6

*

* @return javax.swing.JButton

*/

private JButton getJButton6() {

if (jButton6 == null) {

jButton6 = new JButton();

jButton6.setBounds(new Rectangle(62, 184, 44, 37));

jButton6.setText("7");

jButton6.addActionListener(new java.awt.event.ActionListener() {

public void actionPerformed(java.awt.event.ActionEvent e) {

ch[i] = '7';

jTextField.setText(new String(ch).trim());

i++;

}

});

}

return jButton6;

}

/**

* This method initializes jButton7

*

* @return javax.swing.JButton

*/

private JButton getJButton7() {

if (jButton7 == null) {

jButton7 = new JButton();

jButton7.setBounds(new Rectangle(119, 184, 44, 37));

jButton7.setText("8");

jButton7.addActionListener(new java.awt.event.ActionListener() {

public void actionPerformed(java.awt.event.ActionEvent e) {

ch[i] = '8';

jTextField.setText(new String(ch).trim());

i++;

}

});

}

return jButton7;

}

/**

* This method initializes jButton8

*

* @return javax.swing.JButton

*/

private JButton getJButton8() {

if (jButton8 == null) {

jButton8 = new JButton();

jButton8.setBounds(new Rectangle(176, 184, 44, 37));

jButton8.setText("9");

jButton8.addActionListener(new java.awt.event.ActionListener() {

public void actionPerformed(java.awt.event.ActionEvent e) {

ch[i] = '9';

jTextField.setText(new String(ch).trim());

i++;

}

});

}

return jButton8;

}

/**

* This method initializes jButton9

*

* @return javax.swing.JButton

*/

private JButton getJButton9() {

if (jButton9 == null) {

jButton9 = new JButton();

jButton9.setBounds(new Rectangle(233, 74, 44, 37));

jButton9.setText("+");

jButton9.addActionListener(new java.awt.event.ActionListener() {

public void actionPerformed(java.awt.event.ActionEvent e) {

first = Double.parseDouble(jTextField.getText());

way = "+";

ch = new char[12];

i = 0;

jButton16.setEnabled(true);

}

});

}

return jButton9;

}

/**

* This method initializes jButton10

*

* @return javax.swing.JButton

*/

private JButton getJButton10() {

if (jButton10 == null) {

jButton10 = new JButton();

jButton10.setBounds(new Rectangle(290, 74, 44, 37));

jButton10.setText("-");

jButton10.addActionListener(new java.awt.event.ActionListener() {

public void actionPerformed(java.awt.event.ActionEvent e) {

first = Double.parseDouble(jTextField.getText());

way = "-";

ch = new char[12];

i = 0;

jButton16.setEnabled(true);

}

});

}

return jButton10;

}

/**

* This method initializes jButton11

*

* @return javax.swing.JButton

*/

private JButton getJButton11() {

if (jButton11 == null) {

jButton11 = new JButton();

jButton11.setBounds(new Rectangle(233, 129, 44, 37));

jButton11.setText("*");

jButton11.addActionListener(new java.awt.event.ActionListener() {

public void actionPerformed(java.awt.event.ActionEvent e) {

first = Double.parseDouble(jTextField.getText());

way = "*";

ch = new char[12];

i = 0;

jButton16.setEnabled(true);

}

});

}

return jButton11;

}

/**

* This method initializes jButton12

*

* @return javax.swing.JButton

*/

private JButton getJButton12() {

if (jButton12 == null) {

jButton12 = new JButton();

jButton12.setBounds(new Rectangle(290, 129, 44, 37));

jButton12.setText("/");

jButton12.addActionListener(new java.awt.event.ActionListener() {

public void actionPerformed(java.awt.event.ActionEvent e) {

first = Double.parseDouble(jTextField.getText());

way = "/";

ch = new char[12];

i = 0;

jButton16.setEnabled(true);

}

});

}

return jButton12;

}

/**

* This method initializes jButton13

*

* @return javax.swing.JButton

*/

private JButton getJButton13() {

if (jButton13 == null) {

jButton13 = new JButton();

jButton13.setBounds(new Rectangle(233, 184, 44, 37));

jButton13.setText("=");

jButton13.addActionListener(new java.awt.event.ActionListener() {

public void actionPerformed(java.awt.event.ActionEvent e) {

second = Double.parseDouble(jTextField.getText());

if (way.equals("")){

jTextField.setText(""+second);

}

if (way.equals("+")){

result = first + second;

jTextField.setText(""+result);

}

if (way.equals("-")){

result = first - second;

jTextField.setText(""+result);

}

if (way.equals("*")){

result = first * second;

jTextField.setText(""+result);

}

if(way.equals("/")){

if (second != 0){

result = first / second;

jTextField.setText(""+result);

}else{

jTextField.setText("error");

}

}

jButton16.setEnabled(true);

}

});

}

return jButton13;

}

/**

* This method initializes jButton14

*

* @return javax.swing.JButton

*/

private JButton getJButton14() {

if (jButton14 == null) {

jButton14 = new JButton();

jButton14.setBounds(new Rectangle(290, 184, 44, 37));

jButton14.setText("C");

jButton14.addActionListener(new java.awt.event.ActionListener() {

public void actionPerformed(java.awt.event.ActionEvent e) {

jTextField.setText("0");

first = 0;

second = 0;

way = "";

ch = new char[12];

i = 0;

jButton16.setEnabled(true);

}

});

}

return jButton14;

}

/**

* This method initializes jButton15

*

* @return javax.swing.JButton

*/

private JButton getJButton15() {

if (jButton15 == null) {

jButton15 = new JButton();

jButton15.setBounds(new Rectangle(62, 231, 102, 26));

jButton15.setText("0");

jButton15.addActionListener(new java.awt.event.ActionListener() {

public void actionPerformed(java.awt.event.ActionEvent e) {

ch[i] = '0';

jTextField.setText(new String(ch).trim());

i++;

}

});

}

return jButton15;

}

/**

* This method initializes jButton16

*

* @return javax.swing.JButton

*/

private JButton getJButton16() {

if (jButton16 == null) {

jButton16 = new JButton();

jButton16.setBounds(new Rectangle(176, 231, 44, 26));

jButton16.setText(".");

jButton16.addActionListener(new java.awt.event.ActionListener() {

public void actionPerformed(java.awt.event.ActionEvent e) {

if(ch[0] == 0){

ch[i] = '0';

ch[i+1] = '.';

i++;

}else{

ch[i] = '.';

}

jTextField.setText(new String(ch).trim());

i++;

jButton16.setEnabled(false);

}

});

}

return jButton16;

}

/**

* @param args

*/

public static void main(String[] args) {

// TODO Auto-generated method stub

SwingUtilities.invokeLater(new Runnable() {

public void run() {

Calculator thisClass = new Calculator();

thisClass.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);

thisClass.setVisible(true);

}

});

}

/**

* This is the default constructor

*/

public Calculator() {

super();

initialize();

}

/**

* This method initializes this

*

* @return void

*/

private void initialize() {

this.setSize(356, 298);

this.setContentPane(getJContentPane());

this.setTitle("計(jì)算器");

this.setResizable(false);

}

/**

* This method initializes jContentPane

*

* @return javax.swing.JPanel

*/

private JPanel getJContentPane() {

if (jContentPane == null) {

jContentPane = new JPanel();

jContentPane.setLayout(null);

jContentPane.add(getJTextField(), null);

jContentPane.add(getJButton(), null);

jContentPane.add(getJButton1(), null);

jContentPane.add(getJButton2(), null);

jContentPane.add(getJButton3(), null);

jContentPane.add(getJButton4(), null);

jContentPane.add(getJButton5(), null);

jContentPane.add(getJButton6(), null);

jContentPane.add(getJButton7(), null);

jContentPane.add(getJButton8(), null);

jContentPane.add(getJButton9(), null);

jContentPane.add(getJButton10(), null);

jContentPane.add(getJButton11(), null);

jContentPane.add(getJButton12(), null);

jContentPane.add(getJButton13(), null);

jContentPane.add(getJButton14(), null);

jContentPane.add(getJButton15(), null);

jContentPane.add(getJButton16(), null);

}

return jContentPane;

}

} // @jve:decl-index=0:visual-constraint="437,27"

哥們!這是用eclipse中的visual editor做的,所以代碼比較多,復(fù)制粘貼不方便,我可以發(fā)你郵箱。你把代碼打上去,一樣能運(yùn)行的?。?!

JAVA 編寫(xiě)計(jì)算器 要代碼最簡(jiǎn)單的

學(xué)java的時(shí)候自己編的,很簡(jiǎn)單,能夠連續(xù)輸入計(jì)算式后進(jìn)行計(jì)算

import java.awt.BorderLayout;

import java.awt.Color;

import java.awt.FlowLayout;

import java.awt.Font;

import java.awt.GridLayout;

import java.awt.event.ActionEvent;

import java.awt.event.ActionListener;

import java.text.NumberFormat;

import java.util.ArrayList;

import javax.swing.JButton;

import javax.swing.JFrame;

import javax.swing.JPanel;

import javax.swing.JTextField;

/**簡(jiǎn)易計(jì)算器,能夠進(jìn)行簡(jiǎn)單的計(jì)算

*

* @see 2008.12.9

*/

public class CalculatorA

implements ActionListener{

private JFrame frame;

private JTextField field;

private JButton[] allButtons;

private JButton clearButton;

// private JButton backButton;

String result="";//保存結(jié)果

StringBuilder sb = new StringBuilder();//保存要進(jìn)行的計(jì)算式

int x = 0; //用來(lái)判斷上一次的事件類(lèi)型

String str = "123+456-789*0.=/";

ArrayListString arrayList = new ArrayListString();//保存計(jì)算式,通過(guò)方法進(jìn)行運(yùn)算

public CalculatorA(){

frame = new JFrame("我的計(jì)算器v1.1");

frame.setLocation(300,300);

field = new JTextField(25);

allButtons = new JButton[16];

for(int i=0;iallButtons.length;i++){

allButtons[i]= new JButton(str.substring(i,i+1));

}

clearButton = new JButton("CLEAR");

// backButton = new JButton("——");

init();

setFondAndColor();

addEventHander();

}

public void init(){

frame.setLayout(new BorderLayout());

JPanel northPanel = new JPanel();

JPanel centerPanel = new JPanel();

JPanel southPanel = new JPanel();

northPanel.setLayout(new FlowLayout());

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

southPanel.setLayout(new FlowLayout());

northPanel.add(field);

for(int i=0;iallButtons.length;i++){

centerPanel.add(allButtons[i]);

}

southPanel.add(clearButton);

//southPanel.add(backButton);

frame.add(northPanel,BorderLayout.NORTH);

frame.add(centerPanel,BorderLayout.CENTER);

frame.add(southPanel,BorderLayout.SOUTH);

}

//設(shè)置輸入字體

public void setFondAndColor(){

field.setFont(new Font("宋體",Font.BOLD,24));

field.setBackground(new Color(100,200,200));

field.setForeground(Color.RED);

//設(shè)置字體從右起始

field.setHorizontalAlignment(JTextField.RIGHT);

}

public void showMi(){

frame.pack();

frame.setResizable(false);

frame.setVisible(true);

frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);

}

public void addEventHander(){

for(int i=0;iallButtons.length;i++){

allButtons[i].addActionListener(this);

}

clearButton.addActionListener(this);

// backButton.addActionListener(this);

}

@Override

public void actionPerformed(ActionEvent e) {

String str = e.getActionCommand();//取得當(dāng)前事件返回的值

if("0123456789.".indexOf(str)!=-1){

if(x == 0){ //當(dāng)x為0時(shí)表示還沒(méi)有進(jìn)行輸入

result=str;

sb.append(str);

field.setText(str);

x = 1;

}

else if(x == 1){

result = result +str;

sb.append(str);

field.setText(result);

x = 1;

}

else if(x == 2){

sb.delete(0,sb.length());

result = result+str;

sb.append(str);

field.setText(result);

x = 1;

}

else if(x == 3){

result = str;

sb.delete(0,sb.length());

arrayList.clear();

field.setText(str);

sb.append(str);

field.setText(str);

x = 1;

}

else if(x == 4){

result ="";

sb.delete(0,sb.length());

arrayList.clear();

result = str;

sb.append(str);

field.setText(str);

x = 1;

}

else{

result = result +str;

sb.append(str);

field.setText(result);

x = 1;

}

}

else if("+*-/".indexOf(str)!=-1){

if(x == 0){

field.setText("");

x = 2;

}

else if(x == 1){

result = result + str;

arrayList.add(sb.toString());

arrayList.add(str);

sb.append(str);

field.setText(result);

x = 2;

}

else if(x == 2){

x = 2;

}

else if(x == 3){

field.setText(result+str);

arrayList.add(result);

arrayList.add(str);

result = result+str;

x = 2;

}

else if(x == 4){

result ="";

sb.delete(0,sb.length());

arrayList.clear();

x = 2;

}

else{

field.setText(result+str);

arrayList.add(result);

arrayList.add(str);

result = result+str;

x = 2;

}

}

else if("=".equals(str)){

if(x == 0){

field.setText("0");

arrayList.clear();

result = "0";

x = 3;

}

else if(x == 1){

try{

arrayList.add(sb.toString());

arrayList = getResult(arrayList);

result = arrayList.get(0);

field.setText(result);

arrayList.clear();

x = 3;

}catch(Exception e1){

field.setText("數(shù)據(jù)格式異常");

x = 0;

}

}

else if(x == 2){

field.setText("數(shù)據(jù)格式錯(cuò)誤.....");

arrayList.clear();

x = 0;

}

else if(x == 3){

field.setText(result);

x = 3;

}

else if(x == 4){

result ="";

sb.delete(0,sb.length());

arrayList.clear();

x = 3;

}

else {

try{

arrayList.add(sb.toString());

arrayList = getResult(arrayList);

result = arrayList.get(0);

field.setText(result);

arrayList.clear();

x = 3;

}catch(Exception e1){

field.setText("數(shù)據(jù)格式異常");

x = 0;

}

}

}

else if("CLEAR".equals(str)){

arrayList.clear();

field.setText("0");

arrayList.add("0");

x = 4;

}

else{

if(result.length()1){

result = result.substring(0,result.length()-1);

if(sb.length()0){

sb.delete(sb.length()-1,sb.length());

}

else {

sb.delete(0,1);

}

field.setText(result);

x = 5;

}

else{

result = "";

sb.delete(0,sb.length());

arrayList.clear();

field.setText("0");

x = 0;

}

}

}

public static ArrayListString getResult(ArrayListString list){

String res = null;

String[] s = {"/","*","-","+"};

int i=0;

if(list.size()1){

for(;is.length;){

if(s[i].equals("/")){

for(int j=0;jlist.size();j++){

if(list.get(j).equals(s[i])){

res = Double.toString(Double.parseDouble(list.get(j-1))/Double.parseDouble(list.get(j+1)));

//本地的數(shù)據(jù)格式

NumberFormat nf = NumberFormat.getInstance();

res = nf.format(Double.parseDouble(res));

res = getChange(res);

list.set(j-1,res);

list.remove(j);

list.remove(j);

getResult(list);

}

}

i++;

}

else if(s[i].equals("*")){

for(int j=0;jlist.size();j++){

if(list.get(j).equals(s[i])){

res = Double.toString(Double.parseDouble(list.get(j-1))*Double.parseDouble(list.get(j+1)));

NumberFormat nf = NumberFormat.getInstance();

res = nf.format(Double.parseDouble(res));

res = getChange(res);

list.set(j-1,res);

list.remove(j);

list.remove(j);

getResult(list);

}

}

i++;

}

else if(s[i].equals("-")){

for(int j=0;jlist.size();j++){

if(list.get(j).equals(s[i])){

res = Double.toString(Double.parseDouble(list.get(j-1))-Double.parseDouble(list.get(j+1)));

NumberFormat nf = NumberFormat.getNumberInstance();

res = nf.format(Double.parseDouble(res));

res = getChange(res);

list.set(j-1,res);

list.remove(j);

list.remove(j);

getResult(list);

}

}

i++;

}

else {

for(int j=0;jlist.size();j++){

if(list.get(j).equals(s[i])){

res = Double.toString(Double.parseDouble(list.get(j-1))+Double.parseDouble(list.get(j+1)));

NumberFormat nf = NumberFormat.getInstance();

res = nf.format(Double.parseDouble(res));

res = getChange(res);

list.set(j-1,res);

list.remove(j);

list.remove(j);

getResult(list);

}

}

i++;

}

}

}

return list;

}

//對(duì)數(shù)字字符串進(jìn)行排除不必要符號(hào)

public static String getChange(String res){

String s_temp = "";

char[] c = new char[res.length()];

for(int k=0;kc.length;k++){

c[k] = res.charAt(k);

}

for(int k=0;kc.length;k++){

if((c[k]= '0' c[k]= '9')|| c[k] == '.'){

s_temp += c[k];

}

}

return s_temp;

}

public static void main(String[] args){

new CalculatorA().showMi();

}

}

新聞標(biāo)題:java簡(jiǎn)便計(jì)算器代碼 java編寫(xiě)一個(gè)簡(jiǎn)易計(jì)算器程序
分享路徑:http://muchs.cn/article6/hjsjog.html

成都網(wǎng)站建設(shè)公司_創(chuàng)新互聯(lián),為您提供建站公司、做網(wǎng)站、網(wǎng)站制作、服務(wù)器托管網(wǎng)站收錄、品牌網(wǎng)站建設(shè)

廣告

聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以用戶投稿、用戶轉(zhuǎn)載內(nèi)容為主,如果涉及侵權(quán)請(qǐng)盡快告知,我們將會(huì)在第一時(shí)間刪除。文章觀點(diǎn)不代表本網(wǎng)站立場(chǎng),如需處理請(qǐng)聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內(nèi)容未經(jīng)允許不得轉(zhuǎn)載,或轉(zhuǎn)載時(shí)需注明來(lái)源: 創(chuàng)新互聯(lián)

成都網(wǎng)站建設(shè)公司