欧美一区二区三区老妇人-欧美做爰猛烈大尺度电-99久久夜色精品国产亚洲a-亚洲福利视频一区二区

計算器程序java代碼 java計算器程序代碼calculator

編寫java程序簡單計算器

主要涉及的知識點: 類的寫法, 以及方法的調(diào)用 .建議多做練習(xí). 如果有看不懂的地方. 可以繼續(xù)追問,一閉鋒起討論.

南海網(wǎng)站建設(shè)公司創(chuàng)新互聯(lián)公司,南海網(wǎng)站設(shè)計制作,有大型網(wǎng)站制作公司豐富經(jīng)驗。已為南海近1000家提供企業(yè)網(wǎng)站建設(shè)服務(wù)。企業(yè)網(wǎng)站搭建\外貿(mào)網(wǎng)站建設(shè)要多少錢,請找那個售后服務(wù)好的南海做網(wǎng)站的公司定做!

參考代碼悔銷如下

//Number類

class?Number?{

private?int?n1;//私有的整型數(shù)據(jù)成員n1

private?int?n2;//私有的整型數(shù)據(jù)成員n2

//?通過構(gòu)造函數(shù)給n1和n2賦值

public?Number(int?n1,?int?n2)?{

this.n1?=?n1;

this.n2?=?n2;

}

//?加法

public?int?addition()?{

return?n1?+?n2;

}

//?減法

public?int?subtration()?{

return?n1?-?n2;

}

//?乘法

public?int?multiplication()?{

return?n1?*?n2;

}

//?除法?(可能除不盡,所以轎前晌使用double作為返回類型)

public?double?division()?{

return?n1?*?1.0?/?n2;?//?通過n1*1.0?把計算結(jié)果轉(zhuǎn)換成double類型.

}

}

//Exam4?類

public?class?Exam4{

public?static?void?main(String[]?args)?{

Number?number=new?Number(15,?6);//創(chuàng)建Number類的對象

//下面的是調(diào)用方法得到返回值進行輸出顯示

System.out.println("加法"+number.addition());

System.out.println("減法"+number.subtration());

System.out.println("乘法"+number.multiplication());

System.out.println("除法"+number.division());

}

}

JAVA計算器代碼

import java.awt.*;

import java.applet.*;

public class CalculatorDemo extends Applet

{

TextField answerText;

Button pointButton,equalButton,plusButton;

Button minusButton,clearButton,multiButton,divisionButton;

Button[] b=new Button[10];

String currentOp,preOp;

String foreText,backText;

boolean isFloat=false;

public void init()

{

Panel p1=new Panel();

Panel p2=new Panel();

Panel p3=new Panel();

currentOp=new String("");

preOp=new String("");

foreText=new String("");

backText=new String("");

answerText=new TextField(8);

setBackground(Color.lightGray);

setForeground(Color.blue);

for(int i=9;i=0;i--)

{

b[i]=new Button(Integer.toString(i));

p2.add(b[i]);

}

pointButton=new Button(".");

equalButton=new Button("=");

equalButton.setForeground(Color.red);

clearButton=new Button("清除");

clearButton.setForeground(Color.red);

divisionButton=new Button("/");

divisionButton.setForeground(Color.red);

multiButton=new Button("*");

multiButton.setForeground(Color.red);

minusButton=new Button("-");

minusButton.setForeground(Color.red);

plusButton=new Button("+");

plusButton.setForeground(Color.red);

setLayout(new FlowLayout());

p1.setLayout(new FlowLayout());

p2.setLayout(new GridLayout(4,3));

p3.setLayout(new GridLayout(4,1));

p1.add(answerText);

p1.add(clearButton);

p2.add(pointButton);

p2.add(equalButton);

p3.add(plusButton);

p3.add(minusButton);

p3.add(multiButton);

p3.add(divisionButton);

add(p1);

add(p2);

add(p3);

}

public boolean action(Event e,Object o)

{

String s=new String("");

for(int i=0;i10;i++)

{

if(e.target==b[i]||e.target==pointButton)

{

if(e.target !=pointButton)

{

s=(String)o;

doForeText(s);

}

if((e.target==pointButton)(!isFloat))

{

isFloat=true;

s=(String)o;

if(foreText.equals(""))

{

foreText +="0.";

}

else

{

doForeText(s);

}

}

}

}

if(e.target==clearButton)

{

doClear();

}

if((e.target==clearButton)||(e.target==divisionButton)

||(e.target==plusButton)||(e.target==minusButton))

{

if(foreText !="")

{

currentOp=((String)o);

doOperator();

}

else

{

preOp=((String)o);

}

}

if(e.target==equalButton)

{

doOperator();

}

return true;

}

public void doOperator()

{

double dFore,dBack;

Double d;

if(preOp.equals(""))

{

backText=foreText;

foreText="";

answerText.setText(backText);

}

else

{

dFore=(new Double(foreText)).doubleValue();

dBack=(new Double(backText)).doubleValue();

foreText="";

backText=answerText.getText();

if(preOp.equals("+"))

{

d=new Double((dBack+dFore));

answerText.setText(d.toString());

backText=d.toString();

}

if(preOp.equals("-"))

{

d=new Double((dBack-dFore));

answerText.setText(d.toString());

backText=d.toString();

}

if(preOp.equals("*"))

{

d=new Double((dBack*dFore));

answerText.setText(d.toString());

backText=d.toString();

}

if(preOp.equals("/"))

{

if(dFore==0)

{

answerText.setText("除數(shù)不能為0");

return;

}

d=new Double((dBack/dFore));

answerText.setText(d.toString());

backText=d.toString();

}

}

preOp=currentOp;

}

public void doForeText(String s)

{

foreText +=s;

answerText.setText(foreText);

}

public void doBackText(String s)

{

backText=foreText;

foreText="";

answerText.setText(foreText);

}

public void doClear()

{

currentOp="";

preOp="";

foreText="";

backText="";

isFloat=false;

answerText.setText("");

}

}

用java.EE編寫計算器程序代碼

java EE是java企業(yè)級開發(fā)平臺的棚芹旦意思,實在是看不出跟計算器這種小程序有什么關(guān)聯(lián)。不知道樓主要找的是不是這個。

package ex1;

import java.awt.BorderLayout;

import java.awt.Color;

import java.awt.Dimension;

import java.awt.Font;

import java.awt.GridLayout;

import java.awt.event.ActionEvent;

import java.awt.event.ActionListener;

import java.text.DecimalFormat;

import javax.swing.BorderFactory;

import javax.swing.ButtonGroup;

import javax.swing.JButton;

import javax.swing.JCheckBoxMenuItem;

import javax.swing.JFrame;

import javax.swing.JMenu;

import javax.swing.JMenuBar;

import javax.swing.JMenuItem;

import javax.swing.JPanel;

import javax.swing.JRadioButtonMenuItem;

import javax.swing.JTextField;

public class Calcutor extends JFrame {

private JTextField tf;

private JPanel panel1, panel2, panel3, panel4;

private JMenuBar myBar;

private JMenu menu1, menu2, menu3;

private JMenuItem editItem1, editItem2, help1, help2, help3;

private JRadioButtonMenuItem seeItem1, seeItem2;//單選框

private JCheckBoxMenuItem seeItem3;//復(fù)選框

private ButtonGroup bgb;

private String back;

private boolean IfResult = true, flag = false;

private String oper = "=";

private double result = 0;

private Num numActionListener;

private DecimalFormat df;

public Calcutor(){

super("科學(xué)計算器");//設(shè)鏈擾置標(biāo)題欄

df = new DecimalFormat("#.####");//保留四位小數(shù)

this.setLayout(new BorderLayout(10, 5));

panel1 = new JPanel(new GridLayout(1, 3, 10, 10));

panel2 = new JPanel(new GridLayout(5, 6, 5, 5));//5行6列

panel3 = new JPanel(new GridLayout(5, 1, 5, 5));

panel4 = new JPanel(new BorderLayout(5, 5));

/**

* 菜單欄

*/

myBar = new JMenuBar();

menu1 = new JMenu("編輯(E)");

menu2 = new JMenu("查看(V)");

menu3 = new JMenu("幫助(H)");

menu1.setFont(new Font("宋體", Font.PLAIN, 12));

menu2.setFont(new Font("宋體", Font.PLAIN, 12));

menu3.setFont(new Font("宋體", Font.PLAIN, 12));

/**

* 編輯欄

*/

editItem1 = new JMenuItem("首此復(fù)制(C) Ctrl+C");

editItem2 = new JMenuItem("粘貼(P) Ctrl+V");

editItem1.setFont(new Font("宋體",Font.PLAIN,12));

editItem2.setFont(new Font("宋體",Font.PLAIN,12));

/**

* 查看欄

*/

seeItem1 = new JRadioButtonMenuItem("科學(xué)型(T)");

seeItem2 = new JRadioButtonMenuItem("標(biāo)準(zhǔn)型(S)");

seeItem3 = new JCheckBoxMenuItem("數(shù)字分組(I)");

seeItem1.setFont(new Font("宋體",Font.PLAIN,12));

seeItem2.setFont(new Font("宋體",Font.PLAIN,12));

seeItem3.setFont(new Font("宋體",Font.PLAIN,12));

/**

* 幫助欄

*/

help1 = new JMenuItem("幫助主題(H)");

help2 = new JMenuItem("關(guān)于計算器(A)");

help1.setFont(new Font("宋體",Font.PLAIN,12));

help2.setFont(new Font("宋體",Font.PLAIN,12));

bgb = new ButtonGroup();//選項組

menu1.add(editItem1);

menu1.add(editItem2);

menu2.add(seeItem1);

menu2.add(seeItem2);

menu2.addSeparator();//添加一條分割線

menu2.add(seeItem3);

menu3.add(help1);

menu3.addSeparator();//添加一條分割線

menu3.add(help2);

myBar.add(menu1);

myBar.add(menu2);

myBar.add(menu3);

this.setJMenuBar(myBar);

numActionListener = new Num();//實現(xiàn)數(shù)字監(jiān)聽

/**

* 文本域,即為計算器的屏幕顯示區(qū)域

*/

tf = new JTextField();

tf.setEditable(false);//文本區(qū)域不可編輯

tf.setBackground(Color.white);//文本區(qū)域的背景色

tf.setHorizontalAlignment(JTextField.RIGHT);//文字右對齊

tf.setText("0");

tf.setBorder(BorderFactory.createLoweredBevelBorder());

init();//對計算器進行初始化

}

/**

* 初始化操作

* 添加按鈕

*/

private void init(){

addButton(panel1, "Backspace", new Clear(), Color.red);

addButton(panel1, "CE", new Clear(), Color.red);

addButton(panel1, "C", new Clear(), Color.red);

addButton(panel2, "1/x", new Signs(), Color.magenta);

addButton(panel2, "log", new Signs(), Color.magenta);

addButton(panel2, "7", numActionListener, Color.blue);

addButton(panel2, "8", numActionListener, Color.blue);

addButton(panel2, "9", numActionListener, Color.blue);

addButton(panel2, "÷", new Signs(), Color.red);

addButton(panel2, "n!", new Signs(), Color.magenta);

addButton(panel2, "sqrt", new Signs(), Color.magenta);

addButton(panel2, "4", numActionListener, Color.blue);

addButton(panel2, "5", numActionListener, Color.blue);

addButton(panel2, "6", numActionListener, Color.blue);

addButton(panel2, "×", new Signs(), Color.red);

addButton(panel2, "sin", new Signs(), Color.magenta);

addButton(panel2, "x^2", new Signs(), Color.magenta);

addButton(panel2, "1", numActionListener, Color.blue);

addButton(panel2, "2", numActionListener, Color.blue);

addButton(panel2, "3", numActionListener, Color.blue);

addButton(panel2, "-", new Signs(), Color.red);

addButton(panel2, "cos", new Signs(), Color.magenta);

addButton(panel2, "x^3", new Signs(), Color.magenta);

addButton(panel2, "0", numActionListener, Color.blue);

addButton(panel2, "-/+", new Clear(), Color.blue);

addButton(panel2, ".", new Dot(), Color.blue);

addButton(panel2, "+", new Signs(), Color.red);

addButton(panel2, "tan", new Signs(), Color.magenta);

addButton(panel2, "%", new Signs(), Color.magenta);

addButton(panel2, "π", numActionListener, Color.orange);

addButton(panel2, "e", numActionListener, Color.orange);

addButton(panel2, "′″", new Signs(), Color.orange);

addButton(panel2, "=", new Signs(), Color.red);

JButton btns = new JButton("計算器");

btns.setBorder(BorderFactory.createLoweredBevelBorder());

btns.setEnabled(false);//按鈕不可操作

btns.setPreferredSize(new Dimension(20, 20));

panel3.add(btns);//加入按鈕

addButton(panel3, "MC", null, Color.red);

addButton(panel3, "MR", null, Color.red);

addButton(panel3, "MS", null, Color.red);

addButton(panel3, "M+", null, Color.red);

panel4.add(panel1, BorderLayout.NORTH);

panel4.add(panel2, BorderLayout.CENTER);

this.add(tf, BorderLayout.NORTH);

this.add(panel3, BorderLayout.WEST);

this.add(panel4);

pack();

this.setResizable(false);//窗口不可改變大小

this.setLocation(300, 200);

this.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);

}

/**

* 統(tǒng)一設(shè)置按鈕的的使用方式

* @param panel

* @param name

* @param action

* @param color

*/

private void addButton(JPanel panel, String name, ActionListener action, Color color){

JButton bt = new JButton(name);

panel.add(bt);//在面板上增加按鈕

bt.setForeground(color);//設(shè)置前景(字體)顏色

bt.addActionListener(action);//增加監(jiān)聽事件

}

/**

* 計算器的基礎(chǔ)操作(+ - × ÷)

* @param x

*/

private void getResult (double x){

if(oper == "+"){result += x;}

else if(oper == "-"){result -= x;}

else if(oper == "×"){result *= x;}

else if(oper == "÷"){result /= x;}

else if(oper == "="){result = x;}

tf.setText(df.format(result));

}

/**

* 運算符號的事件監(jiān)聽

*/

class Signs implements ActionListener{

public void actionPerformed(ActionEvent e) {

/*

* 用ActionEvent對象的getActionCommand()方法

* 取得與引發(fā)事件對象相關(guān)的字符串

*/

String str = e.getActionCommand();

/* sqrt求平方根 */

if(str.equals("sqrt")){

double i = Double.parseDouble(tf.getText());

if(i=0){

/*

* String.valueOf() 轉(zhuǎn)換為字符串

* df.format() 按要求保留四位小數(shù)

* Math.sqrt() 求算數(shù)平方根

*/

tf.setText(String.valueOf(df.format(Math.sqrt(i))));

}

else{

tf.setText("負數(shù)不能開平方根");

}

}

/* log求常用對數(shù) */

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

double i = Double.parseDouble(tf.getText());

if(i0){

tf.setText(String.valueOf(df.format(Math.log(i))));

}else{

tf.setText("負數(shù)不能求對數(shù)");

}

}

/* %求百分比 */

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

tf.setText(df.format(Double.parseDouble(tf.getText()) / 100));

}

/* 1/x求倒數(shù) */

else if(str.equals("1/x")){

if(Double.parseDouble(tf.getText()) == 0){

tf.setText("除數(shù)不能為零");

}else{

tf.setText(df.format(1 / Double.parseDouble(tf.getText())));

}

}

/* sin求正弦函數(shù) */

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

double i = Double.parseDouble(tf.getText());

tf.setText(String.valueOf(df.format(Math.sin(i))));

}

/* cos求余弦函數(shù) */

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

double i = Double.parseDouble(tf.getText());

tf.setText(String.valueOf(df.format(Math.cos(i))));

}

/* tan求正切函數(shù) */

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

double i = Double.parseDouble(tf.getText());

tf.setText(String.valueOf(df.format(Math.tan(i))));

}

/* n!求階乘 */

else if(str.equals("n!")){

double i = Double.parseDouble(tf.getText());

if((i%2==0)||(i%2==1))//判斷為整數(shù)放進行階乘操作

{

int j = (int)i;//強制類型轉(zhuǎn)換

int result=1;

for(int k=1;k=j;k++)

result *= k;

tf.setText(String.valueOf(result));

}

else

{

tf.setText("無法進行階乘");

}

}

/* x^2求平方 */

else if(str.equals("x^2")){

double i = Double.parseDouble(tf.getText());

tf.setText(String.valueOf(df.format(i*i)));

}

/* x^3求立方 */

else if(str.equals("x^3")){

double i = Double.parseDouble(tf.getText());

tf.setText(String.valueOf(df.format(i*i*i)));

}

/* ′″角度轉(zhuǎn)換 */

/**

* 將角度值轉(zhuǎn)換成弧度值,方便三角函數(shù)的計算

*/

else if(str.equals("′″")){

double i = Double.parseDouble(tf.getText());

tf.setText(String.valueOf(i/180*Math.PI));

}

else{

if(flag){

IfResult = false;

}

if(IfResult){

oper = str;

}else{

getResult(Double.parseDouble(tf.getText()));

oper = str;

IfResult = true;

}

}

}

}

/**

* 清除按鈕的事件監(jiān)聽

*/

class Clear implements ActionListener{

public void actionPerformed(ActionEvent e) {

/*

* 用ActionEvent對象的getActionCommand()方法

* 取得與引發(fā)事件對象相關(guān)的字符串

*/

String str = e.getActionCommand();

if(str == "C"){

tf.setText("0");

IfResult = true;

result = 0;

}else if(str == "-/+"){

double i = 0 - Double.parseDouble(tf.getText().trim());

tf.setText(df.format(i));

}else if(str == "Backspace"){

if(Double.parseDouble(tf.getText()) 0){

if(tf.getText().length() 1){

tf.setText(tf.getText().substring(0, tf.getText().length() - 1));

//使用退格刪除最后一位字符

}else{

tf.setText("0");

IfResult = true;

}

}else{

if(tf.getText().length() 2){

tf.setText(tf.getText().substring(0, tf.getText().length() - 1));

}else{

tf.setText("0");

IfResult = true;

}

}

}else if(str == "CE"){

tf.setText("0");

IfResult = true;

}

}

}

/**

* 數(shù)字輸入的事件監(jiān)聽

*/

class Num implements ActionListener{

public void actionPerformed(ActionEvent e) {

String str = e.getActionCommand();

if(IfResult){

tf.setText("");

IfResult = false;

}

if(str=="π")

{

tf.setText(String.valueOf(Math.PI));

}

else if(str=="e")

{

tf.setText(String.valueOf(Math.E));

}

else{

tf.setText(tf.getText().trim() + str);

if(tf.getText().equals("0")){

tf.setText("0");

IfResult = true;

flag = true;

}

}

}

}

/**

* 小數(shù)點的事件監(jiān)聽

*/

class Dot implements ActionListener{

public void actionPerformed(ActionEvent e) {

IfResult = false;

if(tf.getText().trim().indexOf(".") == -1){

tf.setText(tf.getText() + ".");

}

}

}

/**

* main方法

*/

public static void main(String[] args) {

new Calcutor().setVisible(true);

}

}

標(biāo)題名稱:計算器程序java代碼 java計算器程序代碼calculator
文章起源:http://chinadenli.net/article16/dsppjdg.html

成都網(wǎng)站建設(shè)公司_創(chuàng)新互聯(lián),為您提供品牌網(wǎng)站建設(shè)企業(yè)網(wǎng)站制作網(wǎng)站制作網(wǎng)站維護網(wǎng)站建設(shè)網(wǎng)站策劃

廣告

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

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