日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程资源 > 编程问答 >内容正文

编程问答

利用java做一个简单的计算器

發布時間:2025/7/14 编程问答 20 豆豆
生活随笔 收集整理的這篇文章主要介紹了 利用java做一个简单的计算器 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.
共兩個類。還只是完成+、-、×、÷運算而已。

??? GUI只是用了AWT,很簡單,相信一看就能懂了。
Calculator.java

public?class?Calculator{
private?String?result?=?"0";
private?int?op?=?0,add?=?1,sub?=?2,mul?=?3,div?=?4;

private?double?stringToDouble(String?x){
double?y?=?Double.parseDouble(x);
return?y;
}
private?void?operate(String?x){
double?x1?=?stringToDouble(x);
double?y?=?stringToDouble(result);
switch?(op){
case?0:
result?=?x;
break;
case?1:
result?=?String.valueOf(y+x1);
break;
case?2:
result?=?String.valueOf(y-x1);
break;
case?3:
result?=?String.valueOf(y*x1);
break;
case?4:
if(x1!=0){
result?=?String.valueOf(y/x1);
}else{
result?=?"The?divisor?can't?be?zero!";
}
break;
}
}

public?String?opAdd(String?x){
operate(x);
op?=?add;
return?result;
}
public?String?opSubtract(String?x){
operate(x);
op?=?sub;
return?result;
}
public?String?opMultiply(String?x){
operate(x);
op?=?mul;
return?result;
}
public?String?opDivide(String?x){
operate(x);
op?=?div;
return?result;
}
public?String?opEquals(String?x){
operate(x);
op?=?0;
return?result;
}
public?void?opClean(){
op?=?0;
result?=?"0";
}
}

-------------------------------------------------------------------

第二個
CalculatorGUI.java

import?java.awt.*;
import?java.awt.event.*;
import?java.util.EventObject;

public?class?CalculatorGUI{
private?Frame?f;
private?Panel?p1,p2;
private?Button?b0,b1,b2,b3,b4,b5,b6,b7,b8,b9;
private?Button?bPoint,bAdd,bDec,bMul,bDiv,bCal;
private?TextField?tf;
private?String?s,op;
private?Calculator?cal?=?new?Calculator();
private?boolean?ifOp;

public?CalculatorGUI(){
f?=?new?Frame("Calculator");
p1?=?new?Panel();
p2?=?new?Panel();

b0?=?new?Button("0");
b1?=?new?Button("1");
b2?=?new?Button("2");
b3?=?new?Button("3");
b4?=?new?Button("4");
b5?=?new?Button("5");
b6?=?new?Button("6");
b7?=?new?Button("7");
b8?=?new?Button("8");
b9?=?new?Button("9");
bPoint?=?new?Button(".");
bAdd?=?new?Button("+");
bDec?=?new?Button("-");
bMul?=?new?Button("*");
bDiv?=?new?Button("/");
bCal?=?new?Button("=");

tf?=?new?TextField(25);
tf.setEditable(false);


}

public?void?launchFrame(){
f.setSize(220,160);
f.setResizable(false);
f.addWindowListener(new?myWindowListener());
p1.setLayout(new?FlowLayout(FlowLayout.CENTER));
p1.add(tf);
f.add(p1,BorderLayout.NORTH);
p2.setLayout(new?GridLayout(4,4));

b0.addActionListener(new?setLabelText_ActionListener());
b1.addActionListener(new?setLabelText_ActionListener());
b2.addActionListener(new?setLabelText_ActionListener());
b3.addActionListener(new?setLabelText_ActionListener());
b4.addActionListener(new?setLabelText_ActionListener());
b5.addActionListener(new?setLabelText_ActionListener());
b6.addActionListener(new?setLabelText_ActionListener());
b7.addActionListener(new?setLabelText_ActionListener());
b8.addActionListener(new?setLabelText_ActionListener());
b9.addActionListener(new?setLabelText_ActionListener());
bPoint.addActionListener(new?setLabelText_ActionListener());
bAdd.addActionListener(new?setOperator_ActionListener());
bDec.addActionListener(new?setOperator_ActionListener());
bMul.addActionListener(new?setOperator_ActionListener());
bDiv.addActionListener(new?setOperator_ActionListener());
bCal.addActionListener(new?setOperator_ActionListener());

p2.add(b7);
p2.add(b8);
p2.add(b9);
p2.add(bAdd);
p2.add(b4);
p2.add(b5);
p2.add(b6);
p2.add(bDec);
p2.add(b1);
p2.add(b2);
p2.add(b3);
p2.add(bMul);
p2.add(b0);
p2.add(bPoint);
p2.add(bCal);
p2.add(bDiv);
f.add(p2,BorderLayout.SOUTH);
f.setVisible(true);
}

public?void?setTextFieldText_Temp(){
if?(tf.getText().length()<15?&&?(tf.getText().indexOf(".")==-1?||?!s.equals("."))){
tf.setText(tf.getText()+s);
}else{
tf.setText((tf.getText()+s).substring(0,15));
}
}
public?void?setTextFieldText(){
if(ifOp){
ifOp?=?false;
tf.setText("");
setTextFieldText_Temp();
}else{
setTextFieldText_Temp();
}
}

public?static?void?main(String[]?args){
CalculatorGUI?calculator?=?new?CalculatorGUI();
calculator.launchFrame();
}

class?myWindowListener?extends?WindowAdapter{
public?void?windowClosing(WindowEvent?e){
System.exit(0);
}
}

class?setLabelText_ActionListener?implements?ActionListener{
public?void?actionPerformed(ActionEvent?e){
Button?tempB?=?(Button)e.getSource();
s?=?tempB.getLabel();
setTextFieldText();
}
}

class?setOperator_ActionListener?implements?ActionListener{
public?void?actionPerformed(ActionEvent?e){
Button?tempB?=?(Button)e.getSource();
op?=?tempB.getLabel();
if(op.equals("+")){
tf.setText(cal.opAdd(tf.getText()));
ifOp?=?true;
}else?if(op.equals("-")){
tf.setText(cal.opSubtract(tf.getText()));
ifOp?=?true;
}else?if(op.equals("*")){
tf.setText(cal.opMultiply(tf.getText()));
ifOp?=?true;
}else?if(op.equals("/")){
tf.setText(cal.opDivide(tf.getText()));
ifOp?=?true;
}else?if(op.equals("=")){
tf.setText(cal.opEquals(tf.getText()));
ifOp?=?true;
}
}
}
}

總結

以上是生活随笔為你收集整理的利用java做一个简单的计算器的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。

主站蜘蛛池模板: 日本免费网站在线观看 | 天天插综合网 | 一级一毛片| 在线小视频 | 美女视频免费在线观看 | 黑人巨大精品欧美一区二区免费 | 亚洲综合色网 | a网站在线 | 国产日产欧洲无码视频 | 公交顶臀绿裙妇女配视频 | 呦呦在线视频 | wwwjizzzcom| 69性视频 | 涩涩涩涩涩涩涩涩涩涩 | 九九爱爱视频 | 日本五十路女优 | 欧美黄色大片网站 | 欧美成人aaa片一区国产精品 | 久久影视一区二区 | 最近最新最好看的2019 | 午夜天堂影院 | 久久aaaa片一区二区 | 日韩欧美亚洲视频 | 男人操女人的免费视频 | 天天综合网久久 | 五月天中文字幕 | 国产一区二区三区 | 四虎av影视 | 成人18在线| 麻豆视频在线看 | 黄色网页免费 | 欧美gv在线 | 色香色香欲天天天影视综合网 | 99热精品在线 | 国模小黎自慰gogo人体 | 亚洲aaa| 99国产精品国产精品九九 | 久久久久久久久久久久久久免费看 | 日本黄色美女 | 韩国一区视频 | 一区二区三区国产视频 | 久久久无码精品亚洲无少妇 | 亚洲黄色视屏 | 中文字幕一区二区人妻电影 | 日本一区二区三区精品视频 | 一区二区在线国产 | 欧美大肚乱孕交hd孕妇 | 少妇无内裤下蹲露大唇视频 | 别揉我奶头啊嗯一区二区 | 国产一区二区三区中文字幕 | 不卡一区二区三区四区 | 在线免费观看黄网站 | 国产精品一国产精品 | 涩涩视频网 | 色97| 欧美精品一线 | 成人国产欧美 | 熟女性饥渴一区二区三区 | 91福利免费 | 怡红院最新网址 | 亚洲乱码国产乱码精品精98午夜 | 高跟鞋肉丝交足91 | 亚洲最大视频网站 | 国产小视频在线观看免费 | 翔田千里一区二区三区av | 日韩av无码一区二区三区不卡 | 91美女视频 | 国产精品99精品久久免费 | 怎么可能高潮了就结束漫画 | 少妇高潮视频 | 国产毛片久久 | 久草精品在线 | jav中文字幕 | 操网 | 日本调教电影 | 久草视频在线资源 | 韩国成人理伦片免费播放 | 色花堂在线 | 中文字幕国内自拍 | 欧美日韩激情网 | 日韩中文字幕网 | 午夜精品一区二区三区在线视频 | 成年在线观看 | 91手机在线播放 | 西西人体做爰大胆gogo | 日韩av成人在线观看 | 超级碰在线观看 | 国产在线欧美 | 国产综合图片 | 91丨porny丨在线中文 | 又粗又猛又爽又黄少妇视频网站 | 日本乱论视频 | 丰满雪白极品少妇流白浆 | 69re视频 | 国产视频www | 可以免费观看av | 欧美级毛片 | 日本99热 | 久久爱伊人 |