第七色在线视频,2021少妇久久久久久久久久,亚洲欧洲精品成人久久av18,亚洲国产精品特色大片观看完整版,孙宇晨将参加特朗普的晚宴

為了賬號安全,請及時綁定郵箱和手機(jī)立即綁定
已解決430363個問題,去搜搜看,總會有你想問的

怎樣用java制作一個簡單的計算器app

怎樣用java制作一個簡單的計算器app

傲骨 2016-10-23 17:15:12
有加減乘除小數(shù)點(diǎn)等于的運(yùn)算就行了,反正我開始點(diǎn)需other, 然后點(diǎn)jframe,進(jìn)入頁面之后點(diǎn)一下水平制然后就點(diǎn)什么jbutton jText之類的,然后這些按鈕里面寫什么內(nèi)容呢??我就不會了
查看完整描述

1 回答

已采納
?
大咪

TA貢獻(xiàn)785條經(jīng)驗(yàn) 獲得超332個贊


		
		import?java.awt.*;
		import?java.awt.event.*;
		import?javax.swing.*;
		?
		public?class?Calc?extends?JFrame?implements?ActionListener?{
		????private?static?final?long?serialVersionUID?=?-169068472193786457L;
		????private?class?WindowCloser?extends?WindowAdapter?{
		???????public?void?windowClosing(WindowEvent?we)?{
		???????????System.exit(0);
		???????}
		????}
		?
		????int?i;
		????????private?final?String[]?str?=?{?"7",?"8",?"9",?"/",?"4",?"5",?"6",?"*",?"1",
		???????????"2",?"3",?"-",?".",?"0",?"=",?"+"?};
		????//?建立按鈕
		????JButton[]?buttons?=?new?JButton[str.length];
		????//?撤銷重置
		????JButton?reset?=?new?JButton("CE");
		????//?建立文本域顯示結(jié)果
		????JTextField?display?=?new?JTextField("0");
		????
		????????public?Calc()?{
		???????super("Calculator");
		???????//?添加一個面板
		???????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);
		???????//?添加操作動作的監(jiān)聽器.
		???????for?(i?=?0;?i?<?str.length;?i++)
		???????????buttons[i].addActionListener(this);
		???????//?為重置按鈕添加監(jiān)聽器
		???????reset.addActionListener(this);
		???????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?=?"=";
		????
		???????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?Calc();
		????}
		}

	

你創(chuàng)建完的面板需要繼承一個監(jiān)聽器,他的目的是監(jiān)聽你的按鍵并將參數(shù)傳入,算法部分就是很簡單的+-*/

查看完整回答
2 反對 回復(fù) 2016-10-23
  • 1 回答
  • 4 關(guān)注
  • 3901 瀏覽

添加回答

舉報

0/150
提交
取消
微信客服

購課補(bǔ)貼
聯(lián)系客服咨詢優(yōu)惠詳情

幫助反饋 APP下載

慕課網(wǎng)APP
您的移動學(xué)習(xí)伙伴

公眾號

掃描二維碼
關(guān)注慕課網(wǎng)微信公眾號