導航:首頁 > 編程語言 > javagui設計計算器

javagui設計計算器

發布時間:2023-05-02 05:27:52

❶ 用java語言,編寫一個計算器

有一個現成的.你看看吧

import java.awt.event.ActionEvent;

public class Application extends JFrame {

protected String str = "";
protected boolean isChar = true;
protected boolean isEqual = false;
protected JTextField textField;

public Application() {
Listener listerner = new Listener(this);
getContentPane().setLayout(null);

JButton button = new JButton("7");
button.addActionListener(listerner);
button.setBounds(12, 69, 43, 27);
getContentPane().add(button);

textField = new JTextField();
textField.setText("0");
textField.setEditable(false);
textField.setHorizontalAlignment(JTextField.RIGHT);
textField.setBounds(12, 22, 377, 27);
getContentPane().add(textField);
textField.setColumns(10);

JButton button_1 = new JButton("8");
button_1.addActionListener(listerner);
button_1.setBounds(103, 69, 43, 27);
getContentPane().add(button_1);

JButton button_2 = new JButton("9");
button_2.addActionListener(listerner);
button_2.setBounds(182, 69, 43, 27);
getContentPane().add(button_2);

JButton button_3 = new JButton("4");
button_3.addActionListener(listerner);
button_3.setBounds(12, 106, 43, 27);
getContentPane().add(button_3);

JButton button_4 = new JButton("5");
button_4.addActionListener(listerner);
button_4.setBounds(103, 106, 43, 27);
getContentPane().add(button_4);

JButton button_5 = new JButton("6");
button_5.addActionListener(listerner);
button_5.setBounds(182, 106, 43, 27);
getContentPane().add(button_5);

JButton button_6 = new JButton("1");
button_6.addActionListener(listerner);
button_6.setBounds(12, 143, 43, 27);
getContentPane().add(button_6);

JButton button_7 = new JButton("2");
button_7.addActionListener(listerner);
button_7.setBounds(103, 143, 43, 27);
getContentPane().add(button_7);

JButton button_8 = new JButton("3");
button_8.addActionListener(listerner);
button_8.setBounds(182, 143, 43, 27);
getContentPane().add(button_8);

JButton button_9 = new JButton("+");
button_9.addActionListener(listerner);
button_9.setBounds(269, 72, 43, 27);
getContentPane().add(button_9);

JButton button_10 = new JButton("-");
button_10.addActionListener(listerner);
button_10.setBounds(346, 72, 43, 27);
getContentPane().add(button_10);

JButton button_11 = new JButton("*");
button_11.addActionListener(listerner);
button_11.setBounds(269, 109, 43, 27);
getContentPane().add(button_11);

JButton button_12 = new JButton("/");
button_12.addActionListener(listerner);
button_12.setBounds(346, 109, 43, 27);
getContentPane().add(button_12);

JButton button_13 = new JButton("=");
button_13.addActionListener(listerner);
button_13.setBounds(346, 143, 43, 27);
getContentPane().add(button_13);

JButton button_14 = new JButton("0");
button_14.addActionListener(listerner);
button_14.setBounds(103, 180, 43, 27);
getContentPane().add(button_14);

JButton btnReset = new JButton("reset");
btnReset.addActionListener(listerner);
btnReset.setBounds(269, 180, 118, 27);
getContentPane().add(btnReset);

JButton button_15 = new JButton(".");
button_15.addActionListener(listerner);
button_15.setBounds(269, 146, 43, 27);
getContentPane().add(button_15);

this.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
this.setResizable(false);
this.setSize(442, 260);
this.setLocationRelativeTo(null);
this.setVisible(true);
}

public static void main(String[] args) {
new Application();
}
}

class Listener implements ActionListener {
private Application app = null;

public Listener(Application app) {
this.app = app;
}

public void actionPerformed(ActionEvent e) {
String value = e.getActionCommand();
if (value.matches("[0-9.]")) {
if (app.isChar) {
app.textField.setText("");
app.isChar = false;
}
if (app.isEqual && app.str.matches("[0-9.]*")) {
app.str = "";
app.isEqual = false;
}
app.str += value;
app.textField.setText(app.textField.getText() + value);
} else if (value.matches("[\\+\\-\\*/]")) {
if (!app.str.substring(app.str.length() - 1)
.matches("[\\+\\-\\*/]")) {
app.str += value;
app.isChar = true;
}

} else if ("=".equals(value)) {
app.isEqual = true;
if (app.str.substring(app.str.length() - 1).matches("[\\+\\-]")) {
app.str += "0";
} else if (app.str.substring(app.str.length() - 1)
.matches("[\\*/]")) {
app.str += "1";
}
Interpreter bsh = new Interpreter();
String obj = null;
try {
obj = bsh.eval(app.str).toString();
} catch (Exception exception) {
System.out.println(exception.getMessage());
}

System.out.println(app.str);
app.textField.setText(obj);
app.str = obj;
app.isChar = true;
} else {
app.str = "";
app.textField.setText("0");
}
}
}

❷ 如何java設計計算器並實現功能

import java.awt.BorderLayout;
import java.awt.Color;
import java.awt.GridLayout;
import java.awt.event.ActionEvent;
import java.awt.event.ActionListener;

import javax.swing.ImageIcon;
import javax.swing.JButton;
import javax.swing.JFrame;
import javax.swing.JPanel;
import javax.swing.JTextField;
import javax.swing.SwingConstants;

public class Jisuanqi extends JFrame implements ActionListener {
/**
*
*/
private static final long serialVersionUID = 1L;
Result result = new Result(); // 定義text的面板
Number_Key number_key = new Number_Key(); // 定義按鈕面板
// 當點擊按鈕+、-、*、/時,com = true
boolean com = false;

// 當i=0時說明是我們第一次輸入,字元串text不會累加
int i = 0;

// 存放text的內容
String text = "";
// 存放點擊按鈕+、-、*、/之前的數值
double defbutton = 0;

// +、-、*、/的代號分別為1,2,3,4
int symbol = 0;

// 構造函數
Jisuanqi() {
super("WangJiao"); // 設定標題
setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE); // 設定關閉窗體時退出程序
JPanel pane = new JPanel(); // 定義主面板
pane.setLayout(new BorderLayout());
setBounds(380, 220, 30, 80); // 前兩個參數是在屏幕上顯示的坐標,後兩個是大小
// 替換圖標
ImageIcon icon = new ImageIcon("F:1.GIF");
// Jisuanqi.class.getResource("APPLE.GIF")
// );
setIconImage(icon.getImage());
pane.add(result, BorderLayout.NORTH);
pane.add(number_key, BorderLayout.CENTER);
pane.add(number_key.equal, BorderLayout.SOUTH);

number_key.one.addActionListener(this); // 對1按鈕添加監聽事件
number_key.two.addActionListener(this); // 對2按鈕添加監聽事件
number_key.three.addActionListener(this); // 對3按鈕添加監聽事件
number_key.four.addActionListener(this); // 對4按鈕添加監聽事件
number_key.five.addActionListener(this); // 對5按鈕添加監聽事件
number_key.six.addActionListener(this); // 對6按鈕添加監聽事件
number_key.seven.addActionListener(this); // 對7按鈕添加監聽事件
number_key.eight.addActionListener(this); // 對8按鈕添加監聽事件
number_key.nine.addActionListener(this); // 對9按鈕添加監聽事件
number_key.zero.addActionListener(this); // 對0按鈕添加監聽事件
number_key.ce.addActionListener(this); // 對置零按鈕添加監聽事件
number_key.plus.addActionListener(this); // 對+按鈕添加監聽事件
number_key.equal.addActionListener(this); // 對=按鈕添加監聽事件
number_key.sub.addActionListener(this); // 對-按鈕添加監聽事件
number_key.mul.addActionListener(this); // 對*按鈕添加監聽事件
number_key.div.addActionListener(this); // 對/按鈕添加監聽事件
number_key.point.addActionListener(this); // 對.按鈕添加監聽事件

setContentPane(pane);
pack(); // 初始化窗體大小為正好盛放所有按鈕
}

// 各個按鈕觸發的事件
public void actionPerformed(ActionEvent e) {

/*
* 如果是點擊數字按鈕那麼先要判斷是否在此之前點擊了+、-、*、/、=,如果是那麼com=true 如果沒有com=
* false;或者是否點擊數字鍵,如果是i = 1,如果沒有 i = 0;
*/
if (e.getSource() == number_key.one) {
if (com || i == 0) {
result.text.setText("1");
com = false;
i = 1;
} else {
text = result.text.getText();
result.text.setText(text + "1");
}
} else if (e.getSource() == number_key.two) {
if (com || i == 0) {
result.text.setText("2");
com = false;
i = 1;
} else {
text = result.text.getText();
result.text.setText(text + "2");
}

} else if (e.getSource() == number_key.three) {
if (com || i == 0) {
result.text.setText("3");
com = false;
i = 1;
} else {
text = result.text.getText();
result.text.setText(text + "3");
}
} else if (e.getSource() == number_key.four) {
if (com || i == 0) {
result.text.setText("4");
com = false;
i = 1;
} else {
text = result.text.getText();
result.text.setText(text + "4");
}
} else if (e.getSource() == number_key.five) {
if (com || i == 0) {
result.text.setText("5");
com = false;
i = 1;
} else {
text = result.text.getText();
result.text.setText(text + "5");
}
} else if (e.getSource() == number_key.six) {
if (com || i == 0) {
result.text.setText("6");
com = false;
i = 1;
} else {
text = result.text.getText();
result.text.setText(text + "6");
}
} else if (e.getSource() == number_key.seven) {
if (com || i == 0) {
result.text.setText("7");
com = false;
i = 1;
} else {
text = result.text.getText();
result.text.setText(text + "7");
}
} else if (e.getSource() == number_key.eight) {
if (com || i == 0) {
result.text.setText("8");
com = false;
i = 1;
} else {
text = result.text.getText();
result.text.setText(text + "8");
}
} else if (e.getSource() == number_key.nine) {
if (com || i == 0) {
result.text.setText("9");
com = false;
i = 1;
} else {
text = result.text.getText();
result.text.setText(text + "9");
}
}

/*
* 對於0這個按鈕有一定的說法,在我的程序里不會出現如00000這樣的情況,我加了判斷條件就是
* 如果text中的數值=0就要判斷在這個數值中是否有.存在?如果有那麼就在原來數值基礎之上添 加0;否則保持原來的數值不變
*/
else if (e.getSource() == number_key.zero) { // result.text.getText()是得到text里內容的意思
if (com || i == 0) {
result.text.setText("0");
com = false;
i = 1;
} else {
text = result.text.getText();
if (Float.parseFloat(text) > 0 || Float.parseFloat(text) < 0) { // Float.parseFloat(text)就是類型轉換了,下面都是一樣
result.text.setText(text + "0");
} else {
if (text.trim().indexOf(".") == -1) {
result.text.setText(text);
} else {
result.text.setText(text + "0");
}
}
}
} else if (e.getSource() == number_key.ce) {
result.text.setText("0");
i = 0;
com = true;
// text = "";
defbutton = 0;
}
/*
* 本程序不會讓一個數值中出現2個以上的小數點.具體做法是:判斷是否已經存在.存在就不添加, 不存在就添加.
*/
else if (e.getSource() == number_key.point) {
if (com || i == 0) {
result.text.setText("0.");
com = false;
i = 1;
} else {
text = result.text.getText();
if (text.trim().indexOf(".") == -1) {
result.text.setText(text + ".");
} else {
result.text.setText(text);
}

}
} // 獲得點擊+之前的數值
else if (e.getSource() == number_key.plus) {
com = true;
i = 0;
defbutton = Double.parseDouble(result.text.getText());
symbol = 1;
} // 獲得點擊-之前的數值
else if (e.getSource() == number_key.sub) {
com = true;
i = 0;
defbutton = Double.parseDouble(result.text.getText());

symbol = 2;
} // 獲得點擊*之前的數值
else if (e.getSource() == number_key.mul) {
com = true;
i = 0;
defbutton = Double.parseDouble(result.text.getText());
System.out.println(defbutton);
symbol = 3;
} // 獲得點擊/之前的數值
else if (e.getSource() == number_key.div) {
com = true;
i = 0;
defbutton = Double.parseDouble(result.text.getText());
symbol = 4;
} else if (e.getSource() == number_key.equal) {

switch (symbol) {
case 1: { // 計算加法
double ad = defbutton
+ Double.parseDouble(result.text.getText());
result.text.setText(ad + "");
i = 0;
text = "";
break;
}
case 2: { // 計算減法
double ad = defbutton
- Double.parseDouble(result.text.getText());
result.text.setText(String.valueOf(ad));
i = 0;
text = "";
break;
}
case 3: { // 計算乘法
double ad = defbutton
* Double.parseDouble(result.text.getText());

result.text.setText(ad + "");
i = 0;
text = "";
break;
}
case 4: { // 計算除法
double ad = defbutton
/ Double.parseDouble(result.text.getText());
result.text.setText(ad + "");
i = 0;
text = "";
break;
}
}

System.out.println(com);
}
System.out.println(result.text.getText());
}

@SuppressWarnings("deprecation")
public static void main(String[] args) {
Jisuanqi loveyou = new Jisuanqi();
loveyou.show();
}
}

// 計算器數字按鈕定義面板
class Number_Key extends JPanel {

/**
*
*/
private static final long serialVersionUID = 1L;
JButton zero = new JButton("0"); // 數字鍵0
JButton one = new JButton("1"); // 數字鍵1
JButton two = new JButton("2"); // 數字鍵2
JButton three = new JButton("3"); // 數字鍵3
JButton four = new JButton("4"); // 數字鍵4
JButton five = new JButton("5"); // 數字鍵5
JButton six = new JButton("6"); // 數字鍵6
JButton seven = new JButton("7"); // 數字鍵7
JButton eight = new JButton("8"); // 數字鍵8
JButton nine = new JButton("9"); // 數字鍵9

JButton plus = new JButton("+");
JButton sub = new JButton("-");
JButton mul = new JButton("*");
JButton div = new JButton("/");
JButton equal = new JButton("=");
JButton ce = new JButton("清零"); // 置零鍵
JButton point = new JButton(".");

Number_Key() {
setLayout(new GridLayout(4, 4, 1, 1)); // 定義布局管理器為網格布局

setBackground(Color.blue); // 設置背景顏色
// 添加按鈕
add(one);
add(two);
add(three);
add(four);
add(five);
add(six);
add(seven);
add(eight);
add(nine);
add(zero);
add(plus);
add(sub);
add(mul);
add(div);
add(point);
add(equal);
add(ce);
}
}

// 計算器顯示結果的窗體
class Result extends JPanel {
/**
*
*/
private static final long serialVersionUID = 1L;
// text先是輸入和結果
JTextField text = new JTextField("0");

@SuppressWarnings("deprecation")
Result() { // 講輸入的數字或得到的結果在text的右邊顯示
text.setHorizontalAlignment(SwingConstants.RIGHT);
text.enable(false); // 文本框不能編輯
setLayout(new BorderLayout()); // 設定布局管理器邊框布局
add(text, BorderLayout.CENTER); // text放置在窗體的中間
}
}

❸ Java設計計算器

****************************************************************

寫了一天,終於寫完了。

****************************************************************

說明:

類Calc.java出了界面符合你的要求外,還有以下優點:

1.對輸入內容進行校驗,如果是非法字元(如字母),不響應鍵盤事件,而且單個文本框只能輸入一個小數點;

2.使用Windows界面風格;

3.採用大數計算,更精準;

4.其它……

****************************************************************

代碼如下:

****************************************************************

importjava.awt.BorderLayout;

importjava.awt.Dimension;

importjava.awt.FlowLayout;

importjava.awt.Toolkit;

importjava.awt.event.ActionEvent;

importjava.awt.event.ActionListener;

importjava.awt.event.KeyAdapter;

importjava.awt.event.KeyEvent;

importjava.math.BigDecimal;

importjavax.swing.JButton;

importjavax.swing.JFrame;

importjavax.swing.JLabel;

importjavax.swing.JMenu;

importjavax.swing.JMenuBar;

importjavax.swing.JMenuItem;

importjavax.swing.JOptionPane;

importjavax.swing.JPanel;

importjavax.swing.JTextField;

importjavax.swing.UIManager;

/**

*@authorGodwin

*@version2010-05-16

*/

{

JTextFieldnumber1Text;

JTextFieldnumber2Text;

JTextFieldresultText;

publicCalc(){

this.setTitle("計算器");

/*

*菜單欄

*/

培啟//Operation菜單

JMenuItemaddMenuItem=newJMenuItem("Add");

addMenuItem.setMnemonic('a');

JMenuItemsubtractMenuItem=newJMenuItem("Subtract");

塵塵subtractMenuItem.setMnemonic('s');

JMenuItemmultiplyMenuItem=newJMenuItem("Multiply");

multiplyMenuItem.setMnemonic('m');

JMenuItemdivideMenuItem=newJMenuItem("Divide");

divideMenuItem.setMnemonic('d');

JMenuoperationFile=newJMenu("Operation");

operationFile.setMnemonic('o');

operationFile.add(addMenuItem);

operationFile.add(subtractMenuItem);

operationFile.add(multiplyMenuItem);

operationFile.add(divideMenuItem);

//Exit菜單

JMenuexitMenu=newJMenu("Exit");

派中禪exitMenu.setMnemonic('x');

JMenuItemexitItem=newJMenuItem("Exit");

exitItem.setMnemonic('x');

exitItem.addActionListener(newExitActionListener());

exitMenu.add(exitItem);

//添加Operation和Exit菜單

JMenuBarmenubar=newJMenuBar();

menubar.add(operationFile);

menubar.add(exitMenu);

/*

*操作數和結果

*/

JLabelnumber1Label=newJLabel("Number1");

number1Text=newJTextField(6);

JLabelnumber2Label=newJLabel("Number2");

number2Text=newJTextField(6);

JLabelresultLabel=newJLabel("Result");

resultText=newJTextField(10);

resultText.setEditable(false);

JPaneloperandPanel=newJPanel(newFlowLayout());

operandPanel.add(number1Label);

operandPanel.add(number1Text);

operandPanel.add(number2Label);

operandPanel.add(number2Text);

operandPanel.add(resultLabel);

operandPanel.add(resultText);

/*

*操作符

*/

JButtonaddButton=newJButton("Add");

JButtonsubtractButton=newJButton("Subtract");

JButtonmultiplyButton=newJButton("Multiply");

JButtondivideButton=newJButton("Divide");

JPaneloperatorPanel=newJPanel(newFlowLayout());

operatorPanel.add(addButton);

operatorPanel.add(subtractButton);

operatorPanel.add(multiplyButton);

operatorPanel.add(divideButton);

/*

*添加所有面板

*/

this.add(menubar,BorderLayout.NORTH);

this.add(operandPanel,BorderLayout.CENTER);

this.add(operatorPanel,BorderLayout.SOUTH);

this.pack();

this.setResizable(false);

Toolkittool=Toolkit.getDefaultToolkit();

Dimensionscreen=tool.getScreenSize();

this.setLocation(screen.width/2-this.getWidth()/2,screen.height

/2-this.getHeight()/2);

this.setVisible(true);

this.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);

/*

*添加事件監聽

*/

//菜單監聽

addMenuItem.addActionListener(this);

subtractMenuItem.addActionListener(this);

multiplyMenuItem.addActionListener(this);

divideMenuItem.addActionListener(this);

//文本框監聽

number1Text.addKeyListener(newVerifyInputKeyAdapter());

number2Text.addKeyListener(newVerifyInputKeyAdapter());

//按鈕監聽

addButton.addActionListener(this);

subtractButton.addActionListener(this);

multiplyButton.addActionListener(this);

divideButton.addActionListener(this);

}

{

publicvoidkeyTyped(KeyEvente){

charc=e.getKeyChar();

System.out.println(c);

if(!(('0'<=c)&&(c<='9')||(c==KeyEvent.VK_DELETE)||(c==KeyEvent.VK_BACK_SPACE))){

if(!((!((JTextField)(e.getSource())).getText().contains("."))&&(c=='.'))){

e.consume();

}

}

}

}

{

publicvoidactionPerformed(ActionEvente){

System.exit(0);

}

}

publicvoidactionPerformed(ActionEvente){

Stringoperand1=number1Text.getText();

BigDecimalbig1=BigDecimal.valueOf(Double.valueOf(operand1));

Stringoperand2=number2Text.getText();

BigDecimalbig2=BigDecimal.valueOf(Double.valueOf(operand2));

if((!(operand1.equals("")))&&(operand1!=null)

&&(!(operand2.equals("")))&&(operand2!=null)){

Stringname=e.getSource().getClass().getSimpleName();

Stringoperator="";

if(name.equals("JButton")){

JButtonb=(JButton)(e.getSource());

operator=b.getText();

}elseif(name.equals("JMenuItem")){

JMenuItemm=(JMenuItem)e.getSource();

operator=m.getText();

}

if(operator.equals("Add")){

resultText.setText(String.valueOf(big1.add(big2)));

}elseif(operator.equals("Subtract")){

resultText.setText(String.valueOf(big1.subtract(big2)));

}elseif(operator.equals("Multiply")){

resultText.setText(String.valueOf(big1.multiply(big2)));

}elseif(operator.equals("Divide")){

resultText.setText(String.valueOf(big1.divide(big2)));

}else{

JOptionPane.showMessageDialog(this,"操作有誤!","錯誤提示",

JOptionPane.WARNING_MESSAGE);

}

}else{

JOptionPane.showMessageDialog(this,"請輸入操作數!","錯誤提示",

JOptionPane.WARNING_MESSAGE);

number1Text.requestFocus();

}

}

publicstaticvoidmain(String[]args)throwsException{

UIManager.setLookAndFeel(UIManager.getSystemLookAndFeelClassName());

newCalc();

}

}

****************************************************************

運行結果如下:

❹ 用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;
}
}

❺ 急求!!!如何用java程序代碼實現計算器界面

packagejisuanqi_new;

importjava.awt.*;

importjava.awt.event.*;

publicclassJiSuanQi_newimplementsActionListener

{

Panelp1;//聲明面板p1

TextFieldt1;//聲明文本行t1

String[]label={"7","8","9","/","4","5","6","*","1","2","3","-","0",".","=","+"};//聲明標簽數組label1存放按鈕上的標簽

Button[]b;//聲明按鈕數組存放16個按鈕

privateinti;//聲明i以備後用

privateStringop1="0";//運算數備用

privateStringoperator="+";//運算符備用

privatebooleanappend=false;//備用

publicJiSuanQi_new()//構造方法

{

t1=newTextField();//初始化文本行t1

b=newButton[label.length];//初始化按鈕數組b

p1=newPanel();//初始化面板p1

p1.setLayout(newGridLayout(4,4,4,4));//使面板選擇網格布局管理器以備儲存16個按鈕(4行4列)

for(inti=0;i<b.length;i++)//利用for循環把標簽放在按鈕上,使每個按鈕添加事件監聽器,在面板p1上添加上16個按鈕

{

b[i]=newButton(label[i]);//把標簽依次放在16個按鈕上

b[i].addActionListener(this);//使每個按鈕添加動作事件監聽器

p1.add(b[i]);//分別將按鈕添加到面板p1上

}

Framef=newFrame("計算器1.0");//初始化窗口f,起名字計算器1.0

f.setLayout(newBorderLayout());//為窗口選擇邊界布局管理器

f.add(BorderLayout.NORTH,t1);//把文本行他添加到窗口的北部

f.add(BorderLayout.CENTER,p1);//把面吧p1添加到窗口的中間

f.addWindowListener(newWindowAdapter(){//給窗口f添加窗口事件監聽器

publicvoidwindowClosing(WindowEventeve){//運行窗口關閉方法

System.exit(0);//退出程序

}

});

f.setSize(250,250);//設置窗口大小

f.setLocation(200,200);

f.setVisible(true);//顯示窗口

}

publicstaticvoidmain(Stringargs[])

{

newJiSuanQi_new();//調用構造方法

}

publicvoidactionPerformed(ActionEventae)

{//按鈕被操作發生

Stringcomm=ae.getActionCommand();//返回與此動作相關的命令字元串,即:使用者第一次點擊的按鈕是什麼。

if("0123456789".indexOf(comm)!=-1)//如果相關命令字元串為0~9之間的數字則執行

{

if(append){

Stringtemp=t1.getText();//新數字

t1.setText(temp+comm);

}else{//因為此時append為false執行這個

t1.setText(comm);//將文本行t1設置為相關命令字元串(你按中的按鈕代碼)

append=true;//此時append=true若繼續按按鈕若繼續按數字的話1.第一次的按話不會改變2.非第一次按得話會覆蓋之前按得數字(即缺點:只能進行單個數字的計算)

}

}

elseif(("+-*/".indexOf(comm)!=-1))//如果相關命令字元串為+-*/之間的數字則執行

{

//保存

//t1.setText(comm);

op1=t1.getText();//把第一個數賦值給op1

operator=comm;//把命令字元串賦值給operator

append=false;//此時append為false即若繼續按按鈕若按數字的話將重復上面的動作,按符號的話將覆蓋之前的符號

}

elseif("=".equals(comm))//如果按的是=號,則按條件進行下面的運算

{

Stringop2=t1.getText();//op2第二個數

doubled1=Double.parseDouble(op1);

doubled2=Double.parseDouble(op2);

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

d1=d1+d2;

}elseif(operator.equals("-")){

d1=d1-d2;

}elseif(operator.equals("*")){

d1=d1*d2;

}else{

d1=d1/d2;

}

t1.setText(d1+"");//顯示計算結果

append=false;

}

elseif(".".equals(comm))//若是.號繼續按

{

Stringtemp=t1.getText();

if(temp.indexOf(".")==-1){

t1.setText(temp+".");

append=true;

}

}

}

}

❻ 使用Java的GUI圖形用戶界面編程設計並編寫一個計算器程序

import java.awt.BorderLayout;
import java.awt.GridLayout;
import java.awt.event.ActionEvent;
import java.awt.event.ActionListener;
import javax.swing.JButton;
import javax.swing.JFrame;
import javax.swing.JPanel;
import javax.swing.JTextField;
public class Calculator extends JFrame {
JButton b0 = new JButton("0");
JButton b1 = new JButton("1");
JButton b2 = new JButton("2");
JButton b3 = new JButton("3");
JButton b4 = new JButton("4");
JButton b5 = new JButton("5");
JButton b6 = new JButton("6");
JButton b7 = new JButton("7");
JButton b8 = new JButton("8");
JButton b9 = new JButton("9");
JButton jiaButton = new JButton("+");
JButton jianButton = new JButton("-");
JButton chengButton = new JButton("*");
JButton chuButton = new JButton("/");
JButton yuButton = new JButton("%");
JButton jjButton = new JButton("+/-");
JButton sqrtButton = new JButton("sqrt");
JButton dianButton = new JButton(".");
JButton dengButton = new JButton("=");
JButton Button = new JButton("1/x");
JButton backButton = new JButton("Backpace");
JButton cButton = new JButton("C");
public double op1;
public double op2;
public static final int JIA = 0;
public static final int JIAN = 1;
public static final int CHENG = 2;
public static final int CHU = 3;
public static final int JJ = 4;
public static final int DIAN = 5;
public int current0p = 0;
private boolean opEnd = false;

JPanel panel1 = new JPanel();
JPanel panel2 = new JPanel();
JPanel panel3 = new JPanel();
JPanel panel4 = new JPanel();
JTextField result = new JTextField(20);

public Calculator() {
initPanel2();
initPanel3();
panel2.setLayout(new GridLayout(5, 4));
panel1.setLayout(new BorderLayout());
panel1.add(panel3, BorderLayout.NORTH);// 設置位置
panel1.add(panel2, BorderLayout.CENTER);// 設置位置
getContentPane().add(panel1);
addActionListeners();
setSize(260, 260);
setLocation(500, 300);
setVisible(true);
setDefaultCloseOperation(Calculator.EXIT_ON_CLOSE);
this.setResizable(false);
this.setTitle("計算器");
}
private void initPanel2() {
// 把組件添加相應panel上

panel2.add(b7);
panel2.add(b8);
panel2.add(b9);
panel2.add(chuButton);

panel2.add(b4);
panel2.add(b5);
panel2.add(b6);
panel2.add(chengButton);

panel2.add(b1);
panel2.add(b2);
panel2.add(b3);
panel2.add(jianButton);

panel2.add(b0);
panel2.add(jjButton);
panel2.add(dianButton);
panel2.add(jiaButton);

panel2.add(Button);
panel2.add(yuButton);
panel2.add(sqrtButton);
panel2.add(dengButton);

}

private void addActionListeners() {
ActionHandler c = new ActionHandler();
b0.addActionListener(c);
b1.addActionListener(c);
b2.addActionListener(c);
b3.addActionListener(c);
b4.addActionListener(c);
b5.addActionListener(c);
b6.addActionListener(c);
b7.addActionListener(c);
b8.addActionListener(c);
b9.addActionListener(c);

jiaButton.addActionListener(c);
dengButton.addActionListener(c);
chengButton.addActionListener(c);
chuButton.addActionListener(c);
jianButton.addActionListener(c);
jjButton.addActionListener(c);
dianButton.addActionListener(c);
sqrtButton.addActionListener(c);
yuButton.addActionListener(c);
Button.addActionListener(c);
backButton.addActionListener(c);
cButton.addActionListener(c);
}

class ActionHandler implements ActionListener {
public void actionPerformed(ActionEvent e) {

if (e.getSource() == b0) {
if (opEnd == false) {
result.setText("");

}
result.setText(result.getText() + "0");

}
if (e.getSource() == b1) {
if (opEnd == false) {
result.setText("");

}
result.setText(result.getText() + "1");
opEnd = true;
}

if (e.getSource() == b2) {

if (opEnd == false) {
result.setText("");

}
result.setText(result.getText() + "2");
opEnd = true;
}
if (e.getSource() == b3) {
if (opEnd == false) {
result.setText("");

}
result.setText(result.getText() + "3");
opEnd = true;

}
if (e.getSource() == b4) {
if (opEnd == false) {
result.setText("");

}
result.setText(result.getText() + "4");
opEnd = true;
}
if (e.getSource() == b5) {

if (opEnd == false) {
result.setText("");

}
result.setText(result.getText() + "5");
opEnd = true;
}
if (e.getSource() == b6) {
if (opEnd == false) {
result.setText("");

}
result.setText(result.getText() + "6");
opEnd = true;
}
if (e.getSource() == b7) {
if (opEnd == false) {
result.setText("");

}
result.setText(result.getText() + "7");
opEnd = true;
}
if (e.getSource() == b8) {
if (opEnd == false) {
result.setText("");

}
result.setText(result.getText() + "8");
opEnd = true;
}
if (e.getSource() == b9) {
if (opEnd == false) {
result.setText("");

}
result.setText(result.getText() + "9");
opEnd = true;
}
try {
if (e.getSource() == jiaButton) {
op1 = Double.parseDouble(result.getText());

// 2、說明操作數已經輸入完畢
opEnd = false;

current0p = JIA;
}
if (e.getSource() == chengButton) {
op1 = Double.parseDouble(result.getText());

// 2、說明操作數已經輸入完畢
opEnd = false;

current0p = CHENG;

}
if (e.getSource() == chuButton) {
op1 = Double.parseDouble(result.getText());

// 2、說明操作數已經輸入完畢
opEnd = false;

current0p = CHU;

}
if (e.getSource() == jianButton) {
op1 = Double.parseDouble(result.getText());

// 2、說明操作數已經輸入完畢
opEnd = false;

current0p = JIAN;

}

if (e.getSource() == jjButton) {
String tmp = result.getText();
if (tmp.equals("") || tmp.equals("0")) {
return;
}
if (tmp.charAt(0) == '-') {
tmp = tmp.substring(1);

} else {
tmp = '-' + tmp;
}
result.setText(tmp);
}
if (e.getSource() == dianButton) {
String tmp = result.getText();
if (tmp.equals("")) {
return;
}
if (tmp.indexOf(".") != -1) {
return;
}
tmp = tmp + ".";
result.setText(tmp);

}
if (e.getSource() == sqrtButton) {
String tmp = result.getText();
if (tmp.equals(" ")) {
return;
}
double d;
d = Double.parseDouble(tmp);// 先定義double類型d
if (d < 0) {
result.setText("不能對負數求平方根");
return;
}
op2 = Math.sqrt(d);
result.setText(op2 + "");
}

if (e.getSource() == backButton) {
String s = result.getText();
result.setText("");
for (int i = 0; i < s.length() - 1; i++) {
char a = s.charAt(i);
result.setText(result.getText() + a);
}

}
if (e.getSource() == cButton) {
result.setText("0");
opEnd = false;
}
if (e.getSource() == dengButton) {
op2 = Double.parseDouble(result.getText());

switch (current0p) {
case JIA:
result.setText(op1 + op2 + "");
break;
case JIAN:
result.setText(op1 - op2 + "");
break;
case CHENG:
result.setText(op1 * op2 + "");
break;
case CHU:
if (op2 == 0) {
result.setText("被除數不能為零");
break;
}
result.setText(op1 / op2 + "");
break;
}
opEnd = false;
}
} catch (Exception e1) {
result.setText("Wrong");
opEnd = false;
}
}

}

private void initPanel3() {

panel3.setLayout(new GridLayout(2, 1));
panel3.add(result);
panel3.add(panel4);
panel4.setLayout(new GridLayout(1, 2));

panel4.add(backButton);
panel4.add(cButton);
// panel3.setPreferredSize(new Dimension(260,65));
}

public static void main(String[] args) {
Calculator c = new Calculator();// 生成類實例

}

}

❼ GUI程序設計(java)

=====================第一個類=============================
/**
*
* 實現了系統計算器連續按"="和按"+","-","*","/"進行累記運算的模式
*
* */
import javax.swing.*;
import java.awt.*;
import java.awt.event.*;

public class CalculatorFrame extends JFrame {
private JTextField txtDis = new JTextField("0", 16); //顯示文本框
private JButton[] btnGrp = new JButton[17]; //17個按鈕
private JPanel jpnMain = new JPanel(); //主面板
private JPanel jpnNorth = new JPanel(); //上面板
private JPanel jpnSouth = new JPanel(); //下面板
private double numSaved; //保存的前一個數
private String operator = ""; //保存的運拿汪叢算符號
private String lastPress = ""; //上一次按的陵基按鈕("數字","運算符" 或 "等號")

/*構造函數*/
public CalculatorFrame() {
//窗口設置
setTitle("計算器");
setSize(210, 250);
buttonInit(); //按鈕初始化
//主面板設置
add(jpnMain);
jpnMain.setLayout(null);
jpnMain.add(jpnNorth);
jpnMain.add(jpnSouth);
jpnMain.add(btnGrp[15]);
btnGrp[15].setBounds(8, 180, 188, 30); //添加「=」按鈕
//上面板設置
jpnNorth.setBounds(8, 10, 190, 30);
jpnNorth.add(txtDis);
txtDis.setHorizontalAlignment(JTextField.RIGHT); //設置文本右對齊
txtDis.setEditable(false);
//下面板設置
jpnSouth.setBounds(8, 60, 190, 120);
jpnSouth.setLayout(new GridLayout(4, 4));
addSouthJpn(); //添加17個按鈕
//添加監聽器
addListener();
}

/*17個按鈕顯示消櫻值初始化*/
public void buttonInit() {
for (int i = 0; i < 10; i++) {
btnGrp[i] = new JButton("" + i);
}
btnGrp[10] = new JButton(".");
btnGrp[11] = new JButton("+");
btnGrp[12] = new JButton("-");
btnGrp[13] = new JButton("*");
btnGrp[14] = new JButton("/");
btnGrp[15] = new JButton("=");
btnGrp[16] = new JButton("C");
for (int i = 0; i < 17; i++) {
btnGrp[i].setFont(new Font("Dialog", Font.PLAIN, 18));
}
}

/*按網格順序添加除「=」外16個按鈕*/
public void addSouthJpn() {
int[] index={7,8,9,14,4,5,6,13,1,2,3,12,0,16,10,11};
for(int i=0;i<index.length;i++){
jpnSouth.add(btnGrp[index[i]]);
}
}

/*給按鈕添加監聽器*/
public void addListener() {
//給數字按鈕添加監聽器,btnGrp[10]是"."號
for (int i = 0; i <= 10; i++) {
btnGrp[i].addActionListener(new ActionListener() {
public void actionPerformed(ActionEvent e) {
String button = ( (JButton) e.getSource()).getText();
//如果有運算操作符或文本框數字為0並且按鈕不為「。」
if (lastPress == "運算符" || lastPress == "等號"
|| txtDis.getText().equals("0") && button != ".") {
txtDis.setText(""); //清空文本框
}
if (lastPress == "等號") {
operator = ""; //上次按的是=號,這次按數字,清空運算符
}
if (button == "." && txtDis.getText().indexOf(".") != -1) {
} //這次按的是.文本框內已經包含.這種情況什麼都不做,防止.重復
else {
txtDis.setText(txtDis.getText() + button); //文本框添加內容
}
lastPress = "數字";
}
});
}
//給運算操作符按鈕添加監聽器
for (int i = 11; i <= 14; i++) {
btnGrp[i].addActionListener(new ActionListener() {
public void actionPerformed(ActionEvent e) {
if (operator != "" && lastPress == "數字") { //運算符不為空並且之前按的是數字
(btnGrp[15].getActionListeners())[0].actionPerformed(e); //手動調用=號的監聽響應實現=號功能
}
numSaved = Double.parseDouble(txtDis.getText()); //保存當前文本框的數字
operator = ( (JButton) e.getSource()).getText(); //保存運算操作符
lastPress = "運算符"; //添加運算符標記,下次文本框清空
}
});
}
//給等號按鈕添加監聽器
btnGrp[15].addActionListener(new ActionListener() {
public void actionPerformed(ActionEvent e) {
double numNow = Double.parseDouble(txtDis.getText()); //當前文本框的數字
//運算符匹配操作
if (operator.equals("+")) {
txtDis.setText( (numSaved + numNow) + "");
}
else if (operator.equals("-")) {
if (lastPress == "等號") { //累記運算時的演算法(一直按等號)
txtDis.setText( (numNow - numSaved) + "");
}
else {
txtDis.setText( (numSaved - numNow) + "");
}
}
else if (operator.equals("*")) {
txtDis.setText( (numSaved * numNow) + "");
}
else if (operator.equals("/")) {
if (lastPress == "等號") { //累記運算時的演算法(一直按等號)
txtDis.setText( (numNow / numSaved) + "");
}
else {
txtDis.setText( (numSaved / numNow) + "");
}
}
if (lastPress != "等號") { //是第一次,以後按累記運算
numSaved = numNow; //保存數改為後一個數
}
lastPress = "等號"; //添加運算符標記,下次文本框清空
}
});
//給復位符「C」按鈕添加監聽器
btnGrp[16].addActionListener(new ActionListener() {
public void actionPerformed(ActionEvent e) {
txtDis.setText("0");
numSaved = 0;
operator = "";
lastPress = "";
}
});
}
}

=====================第二個類=============================

import javax.swing.*;
public class Test {
public Test() {
CalculatorFrame calframe = new CalculatorFrame(); //新窗口
calframe.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE); //設置關閉
calframe.setLocationRelativeTo(null); //窗口置中
calframe.setVisible(true); //顯示窗口
calframe.(false); //使用windows視感
calframe.setResizable(false); //窗口不可調大小
}

public static void main(String[] args) {
Test test = new Test();
}
}

❽ 用java編寫一個簡單計算器

不錯,都有現成的了
~~

❾ 用Java設計一個簡單的計算器。

無聊寫了個,修復了下Bug:

importjava.awt.event.ActionEvent;
importjava.awt.event.ActionListener;
importjavax.swing.JButton;
importjavax.swing.JFrame;
importjavax.swing.JLabel;
importjavax.swing.JOptionPane;
importjavax.swing.JTextField;

{

=1L;

privateJButtonplus,rece,multiply,divice,reset;
privateJTextFieldone,two,result;
privatebooleandevice_falg=false;

privatefinalintwidth=400,height=300;

publicCalculate(){
super("修改密碼");
this.setLayout(null);
this.setSize(width,height);
init();
Layout();
}

publicvoidinit(){
plus=newJButton("加");
rece=newJButton("減");
multiply=newJButton("乘");
divice=newJButton("除");
reset=newJButton("清空");
one=newJTextField();
two=newJTextField();
result=newJTextField();
}

publicvoidLayout(){
this.add(newJLabel("第一個數")).setBounds(20,10,60,80);
this.add(one).setBounds(100,38,100,25);
this.add(newJLabel("第二個數")).setBounds(20,40,60,80);
this.add(two).setBounds(100,70,100,25);
this.add(newJLabel("結果")).setBounds(20,85,60,80);
this.add(result).setBounds(100,110,100,25);

this.add(plus).setBounds(70,170,80,25);
this.add(rece).setBounds(200,170,80,25);
this.add(multiply).setBounds(70,200,80,25);
this.add(divice).setBounds(200,200,80,25);

this.add(reset).setBounds(300,220,80,25);

plus.addActionListener(this);
rece.addActionListener(this);
multiply.addActionListener(this);
divice.addActionListener(this);
reset.addActionListener(this);

this.setVisible(true);
this.setDefaultCloseOperation(DISPOSE_ON_CLOSE);
}

publicbooleanFormat(){
booleanFLAG=false;
booleanflag=false;
Stringone=this.one.getText().toString().trim();
Stringtwo=this.two.getText().toString().trim();

if(one==null||one.equals("")||two==null||two.equals("")){
JOptionPane.showMessageDialog(getParent(),"請輸入完整信息!");
FLAG=false;
flag=true;
}

booleanboll_1=one.matches("[\d]{1,100}");
booleanboll_2=two.matches("[\d]{1,100}");
booleanboll_3=one.matches("[\d]{1,100}+[.]+[\d]{1,100}");
booleanboll_4=two.matches("[\d]{1,100}+[.]+[\d]{1,100}");
if(flag){
returnfalse;
}
if((boll_1&&boll_2)||(boll_3&&boll_4)||(boll_1&&boll_4)
||(boll_3&&boll_2)){
FLAG=true;
}else{
JOptionPane.showMessageDialog(getParent(),"請輸入數字!");
FLAG=false;
}

if(FLAG&&device_falg){
if(Double.parseDouble(two)==0){
JOptionPane.showMessageDialog(getParent(),"被除數不能為0!");
FLAG=false;
device_falg=false;
}
}

returnFLAG;
}

publicdoublePlus(doubleone,doubletwo){
returnone+two;
}

publicdoubleMultiply(doubleone,doubletwo){
returnone*two;
}

publicdoubleDivice(doubleone,doubletwo){
returnone/two;
}

publicdoubleRece(doubleone,doubletwo){
returnone-two;
}

publicvoidClear(){
one.setText("");
two.setText("");
result.setText("");
}

@Override
publicvoidactionPerformed(ActionEvente){
Objecto=e.getSource();
if(o==reset){
Clear();
return;
}
if(o==divice){
device_falg=true;
}
if(!Format()){
return;
}
doubleone=Double.parseDouble(this.one.getText());
doubletwo=Double.parseDouble(this.two.getText());
doubleresult=0;
if(o==plus){
result=Plus(one,two);
}elseif(o==rece){
result=Rece(one,two);
}elseif(o==multiply){
result=Multiply(one,two);
}elseif(o==divice){
result=Divice(one,two);
}
this.result.setText(""+result);
}
publicstaticvoidmain(String[]args){
newCalculate();
}
}

❿ 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)));
}

}

閱讀全文

與javagui設計計算器相關的資料

熱點內容
桌面雲配置文件分離 瀏覽:505
iphone5如何升級4g網路 瀏覽:5
團購是在哪個app 瀏覽:897
打開多個word文檔圖片就不能顯示 瀏覽:855
騰訊新聞怎麼切換版本 瀏覽:269
app安裝失敗用不了 瀏覽:326
桌面文件滑鼠點開會變大變小 瀏覽:536
手機誤刪系統文件開不了機 瀏覽:883
微信兔子甩耳朵 瀏覽:998
android藍牙傳文件在哪裡 瀏覽:354
蘋果6s軟解是真的嗎 瀏覽:310
c語言代碼量大 瀏覽:874
最新網路衛星導航如何使用 瀏覽:425
以下哪些文件屬於圖像文件 瀏覽:774
zycommentjs 瀏覽:414
確認全血細胞減少看哪些數據 瀏覽:265
文件有哪些要求 瀏覽:484
cad打開時會出現兩個文件 瀏覽:65
什麼是轉基因網站 瀏覽:48
手柄設備有問題代碼43 瀏覽:921

友情鏈接