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

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程语言 > java >内容正文

java

Java用awt编写计算器(只有加减乘除)

發布時間:2023/12/29 java 42 豆豆
生活随笔 收集整理的這篇文章主要介紹了 Java用awt编写计算器(只有加减乘除) 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

Java用awt編寫計算器(只有加減乘除)

結果演示:

import java.awt.BorderLayout; import java.awt.Button; import java.awt.Color; import java.awt.Frame; import java.awt.GridLayout; import java.awt.Panel; import java.awt.TextField; import java.awt.event.WindowAdapter; import java.awt.event.WindowEvent;public class CalFrame extends Frame {public TextField txt;//文字框文本public boolean flag=false;//判斷是否切換文字框內容public int numflag=0;//判斷是否為第一次輸入和計算public String operator="";//保存計算符號public double num1;//保存前一次運算結果或第一次輸入的數據public double num2;//保存剛輸入的數據public CalFrame(String title) {super(title);init();//引入名字并啟動計算器}private void init() {this.setBounds(100, 100, 160, 220);//計算機位置和大小txt=new TextField();this.add(txt, BorderLayout.NORTH);//利用麻將布局將文本框位置放于最上方Panel panel=new Panel();GridLayout gl=new GridLayout(4,4,1,1);//分割面板panel.setLayout(gl);this.add(panel);//設置frame布局為GridLayoutButton[] btn= {new Button("7"),new Button("8"),new Button("9"),new Button("+"),new Button("4"),new Button("5"),new Button("6"),new Button("-"),new Button("1"),new Button("2"),new Button("3"),new Button("*"),new Button("0"),new Button("."),new Button("="),new Button("/")};for(int i=0;i<btn.length;i++) {panel.add(btn[i]);//將個按鈕加入面板}for(int i=0;i<btn.length;i++) {//判斷是數字還是符號并運用相應方法if(i!=3&&i!=7&&i!=11&&i!=15&&i!=14) {btn[i].addMouseListener(new NumberButtonListener(this));}else {btn[i].addMouseListener(new OperatorButtonListener(this));}}this.setVisible(true);this.addWindowListener(new WindowAdapter() {public void windowClosing(WindowEvent e) {CalFrame.this.dispose();} //關閉計算器});} } import java.awt.Button; import java.awt.event.MouseAdapter; import java.awt.event.MouseEvent;public class NumberButtonListener extends MouseAdapter {private CalFrame frame;public NumberButtonListener(CalFrame frame) {this.frame = frame;}@Overridepublic void mouseClicked(MouseEvent e) {Button btn=(Button)e.getSource();String num=btn.getLabel();if(frame.numflag==0) {//判斷是否為第一次輸入frame.numflag=1;}if(!frame.flag) {frame.txt.setText(num);frame.flag=true;//便于文字框內容的切換}else {frame.txt.setText(frame.txt.getText()+num);//便于二位數等數的輸入}}} import java.awt.Button; import java.awt.event.MouseAdapter; import java.awt.event.MouseEvent;public class OperatorButtonListener extends MouseAdapter {private CalFrame frame;public OperatorButtonListener(CalFrame frame) {this.frame = frame;}@Overridepublic void mouseClicked(MouseEvent e) {frame.flag=false;//使下一次輸入數字時文字框內容切換if(frame.numflag==1) {//判斷是否為第一次計算frame.numflag=2;String num1Str=frame.txt.getText();frame.num1=Double.parseDouble(num1Str);Button btn=(Button)e.getSource();frame.operator=btn.getLabel();}else if(frame.numflag==2) {String num2Str=frame.txt.getText();frame.num2=Double.parseDouble(num2Str);if("+".equals(frame.operator)) {frame.num1=frame.num1+frame.num2;}else if("-".equals(frame.operator)) {frame.num1=frame.num1-frame.num2;}else if("*".equals(frame.operator)) {frame.num1=frame.num1*frame.num2;}else if("/".equals(frame.operator)) {frame.num1=frame.num1/frame.num2;}//判斷符號并進行對應的運算frame.num2=0;Button btn=(Button)e.getSource();frame.operator=btn.getLabel();if("=".equals(frame.operator)) {//判斷最后的符號是否為“=”frame.txt.setText(frame.num1+"");//輸出結果frame.numflag=0;frame.flag=false;//數據清零}}}} public class Counter {public static void main(String[] args) {new CalFrame("計算器");//啟動計算器} }

總結

以上是生活随笔為你收集整理的Java用awt编写计算器(只有加减乘除)的全部內容,希望文章能夠幫你解決所遇到的問題。

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