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

歡迎訪問 生活随笔!

生活随笔

當(dāng)前位置: 首頁 > 编程语言 > java >内容正文

java

Java交互界面实现计算器开发设计【附函数源码,Java理论知识

發(fā)布時(shí)間:2024/3/26 java 61 豆豆
生活随笔 收集整理的這篇文章主要介紹了 Java交互界面实现计算器开发设计【附函数源码,Java理论知识 小編覺得挺不錯(cuò)的,現(xiàn)在分享給大家,幫大家做個(gè)參考.
setOutput = "";setOutput +=INumSecond;//return setOutput;}

}

.[](https://gitee.com/vip204888/java-p7)操作符點(diǎn)擊后數(shù)據(jù)轉(zhuǎn)換賦值函數(shù)=================================================================================當(dāng)我們點(diǎn)擊了運(yùn)算操作符之后,說明我們的第一個(gè)數(shù)據(jù)已經(jīng)輸入完成了,這個(gè)時(shí)候,我們將要輸入的是第二個(gè)數(shù)據(jù),這時(shí)候我們就需要進(jìn)行數(shù)據(jù)的賦值轉(zhuǎn)換,因?yàn)槲覀冏铋_始的時(shí)候是使用INumsecand這個(gè)變量來接收數(shù)據(jù)的,所以在點(diǎn)擊運(yùn)算操作符之后,我們需要將INumsecand的值賦給INumfirst,并將INumsecand的值賦于0,重新接收第二個(gè)數(shù)據(jù)。你可能會問,為什么不直接使用INumfirst接收第一個(gè)數(shù)據(jù),使用INumsecand接收第二個(gè)數(shù)據(jù),原因是因?yàn)?#xff0c;當(dāng)你點(diǎn)擊數(shù)字控件時(shí),我們無法判斷你輸入的數(shù)據(jù)是第一個(gè)數(shù)據(jù)還是第二個(gè)數(shù)據(jù),我們只能將你輸入的數(shù)據(jù)統(tǒng)一的賦值給某一個(gè)變量,在這里這個(gè)變量就是INumsecand,只有我們判斷到當(dāng)點(diǎn)擊了運(yùn)算操作符之后,說明我們的上一個(gè)數(shù)據(jù)已經(jīng)輸入完成了,這時(shí)候才需要我們將INumsecand賦值給INumfirst,來說明我們得到了第一個(gè)數(shù)據(jù)。該函數(shù)的實(shí)現(xiàn)代碼如下:

//定義操作符點(diǎn)擊后數(shù)據(jù)轉(zhuǎn)換賦值的函數(shù)

public static void Operation_Cliked() {

INumFirst = INumSecond; //將第一次鍵入的值賦給第一個(gè)數(shù)INumSecond = 0; //將接收輸入數(shù)值的變量賦值于0DotCliked = false; //將布爾型小數(shù)點(diǎn)變量賦初值為:未點(diǎn)擊lastPrecisionNum = 1;

}

.[](https://gitee.com/vip204888/java-p7)計(jì)算器窗口界面函數(shù)============================================================================在這兩個(gè)函數(shù)完成之后,就是我們計(jì)算器的界面設(shè)計(jì)函數(shù)了,在該函數(shù)中,我們需要對計(jì)算器的整體界面進(jìn)行布局設(shè)計(jì),同時(shí)還需要對每一個(gè)控件添加監(jiān)控,當(dāng)我們點(diǎn)擊相應(yīng)的控件的時(shí)候,可以觸發(fā)相應(yīng)的事件操作。[](https://gitee.com/vip204888/java-p7)運(yùn)算符控件------------------------------------------------------------------------如我們點(diǎn)擊加法按鍵時(shí),需要將我們第一次輸入的數(shù)據(jù)和加法運(yùn)算符輸出出來,并且調(diào)用操作符點(diǎn)擊后數(shù)據(jù)轉(zhuǎn)換賦值的函數(shù),來進(jìn)行數(shù)據(jù)的賦值轉(zhuǎn)換。

//設(shè)置加法按鍵+

JButton add_bt = new JButton("+");add_bt.setBounds(5, 110, 80, 40);add_bt.setFont(font);container.add(add_bt);//添加單擊監(jiān)控add_bt.addActionListener(new ActionListener() {@Overridepublic void actionPerformed(ActionEvent arg0) {// TODO Auto-generated method stubOperation = "+";setOutput += Operation + "\n";text.setText(setOutput); //數(shù)值和運(yùn)算符輸出OperationCliked = true;Operation_Cliked(); //調(diào)用操作符點(diǎn)擊后數(shù)據(jù)轉(zhuǎn)換賦值的函數(shù)}}); [](https://gitee.com/vip204888/java-p7)數(shù)字控件-----------------------------------------------------------------------當(dāng)我們點(diǎn)擊數(shù)字0-9時(shí),說明我們正在進(jìn)行數(shù)值的輸入,這個(gè)時(shí)候就需要獲取到相應(yīng)控件上的數(shù)值,并且調(diào)用控件觸發(fā)時(shí)集中處理函數(shù),將我們鍵入的數(shù)字進(jìn)行賦值。以控件數(shù)字7為例,在這里我使用num\_7.getText()來獲取當(dāng)前所點(diǎn)擊控件的文本,其實(shí)這是比較笨的一種方法,需要對每一個(gè)控件使用該函數(shù),還有一種方法是獲取當(dāng)前焦點(diǎn)所在的控件,并且獲取其文本,對這種方法熟悉的小伙伴可以留言大灰狼一起交流。下面是數(shù)字7控件的相應(yīng)觸發(fā)代碼:

JButton num_7 = new JButton(“7”);

num_7.setBounds(5, 200, 80, 40);

num_7.setFont(font);

container.add(num_7);

num_7.addActionListener(new ActionListener() {

@Overridepublic void actionPerformed(ActionEvent arg0) {// TODO Auto-generated method stubString strNum = num_7.getText();ControlNum = java.lang.Double.parseDouble(strNum);Numbers_Cliked(); //調(diào)用數(shù)值控件觸發(fā)集中處理函數(shù)text.setText(setOutput + setOutput2); //文本框輸出}

});

其他數(shù)字控件與其類似。[](https://gitee.com/vip204888/java-p7)小數(shù)點(diǎn)控件------------------------------------------------------------------------當(dāng)我們點(diǎn)擊小數(shù)點(diǎn)的時(shí)候,說明我們輸入的數(shù)據(jù)存在小數(shù)位,這個(gè)時(shí)候我們就需要對其作出相應(yīng)的操作,如我們在點(diǎn)擊運(yùn)算操作符之前點(diǎn)擊的小數(shù)點(diǎn)控件,則將小數(shù)點(diǎn)顯示在文本框的第一行,表示第一個(gè)數(shù)是一個(gè)小數(shù),如果我們是在點(diǎn)擊運(yùn)算操作符之后點(diǎn)擊的小數(shù)點(diǎn)控件,則需要將小數(shù)點(diǎn)顯示在文本框的第二行,表示我們輸入的第二個(gè)數(shù)是小數(shù)。具體實(shí)現(xiàn)代碼如下:

//設(shè)置小數(shù)點(diǎn)按鈕

JButton num_dot = new JButton(".");num_dot.setBounds(175, 335, 80, 40);num_dot.setFont(font);container.add(num_dot);num_dot.addFocusListener(new FocusListener() {@Overridepublic void focusLost(FocusEvent arg0) {// TODO Auto-generated method stub}@Overridepublic void focusGained(FocusEvent arg0) {// TODO Auto-generated method stubif (OperationCliked) {setOutput2 += ".";text.setText(setOutput + setOutput2);DotCliked = true;}else {setOutput += ".";text.setText(setOutput + setOutput2);DotCliked = true;}}}); [](https://gitee.com/vip204888/java-p7)等號控件-----------------------------------------------------------------------當(dāng)我們點(diǎn)擊等號控件的時(shí)候,說明我們的數(shù)據(jù)和運(yùn)算符的輸入已經(jīng)完成了,接下來我們就只需要根據(jù)我們鍵入的運(yùn)算符進(jìn)行判斷,并進(jìn)行相應(yīng)的運(yùn)算即可,同時(shí)在得到結(jié)果之后,我們還應(yīng)將之前定義的所有變量賦予初值,方便我們進(jìn)行下次輸入。實(shí)現(xiàn)代碼如下:

//設(shè)置等號按鈕

JButton num_equ = new JButton("=");

num_equ.setBounds(260, 110, 80, 130);

num_equ.setFont(font);

container.add(num_equ);

num_equ.addActionListener(new ActionListener() {

@Overridepublic void actionPerformed(ActionEvent arg0) {// TODO Auto-generated method stubswitch (Operation) {case "+":IResult = INumFirst + INumSecond;break;case "-":IResult = INumFirst - INumSecond;break;case "*":IResult = INumFirst * INumSecond;break;case "/":IResult = INumFirst / INumSecond;break;case "X2":IResult = INumFirst * INumFirst;break;case "X3":IResult = INumFirst * INumFirst * INumFirst;break;default:break;}if (Operation == "X2" ){setOutput = INumFirst + "*" + INumFirst + "\n";String strIResult = java.lang.Double.toString(IResult);setOutput2 = strIResult;text.setText(setOutput + setOutput2);

最后

我還通過一些渠道整理了一些大廠真實(shí)面試主要有:螞蟻金服、拼多多、阿里云、百度、唯品會、攜程、豐巢科技、樂信、軟通動力、OPPO、銀盛支付、中國平安等初,中級,高級Java面試題集合,附帶超詳細(xì)答案,希望能幫助到大家。

資料領(lǐng)取方式:戳這里免費(fèi)下載

還有專門針對JVM、SPringBoot、SpringCloud、數(shù)據(jù)庫、Linux、緩存、消息中間件、源碼等相關(guān)面試題。

(setOutput + setOutput2);

最后

我還通過一些渠道整理了一些大廠真實(shí)面試主要有:螞蟻金服、拼多多、阿里云、百度、唯品會、攜程、豐巢科技、樂信、軟通動力、OPPO、銀盛支付、中國平安等初,中級,高級Java面試題集合,附帶超詳細(xì)答案,希望能幫助到大家。

資料領(lǐng)取方式:戳這里免費(fèi)下載

[外鏈圖片轉(zhuǎn)存中…(img-HPo8EhF5-1628341440326)]

還有專門針對JVM、SPringBoot、SpringCloud、數(shù)據(jù)庫、Linux、緩存、消息中間件、源碼等相關(guān)面試題。

[外鏈圖片轉(zhuǎn)存中…(img-ljhTltP6-1628341440330)]

總結(jié)

以上是生活随笔為你收集整理的Java交互界面实现计算器开发设计【附函数源码,Java理论知识的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網(wǎng)站內(nèi)容還不錯(cuò),歡迎將生活随笔推薦給好友。