计算器java程序设计报告总体设计,java程序设计实验报告-计算器
《java程序設計實驗報告-計算器》由會員分享,可在線閱讀,更多相關《java程序設計實驗報告-計算器(18頁珍藏版)》請在金鋤頭文庫上搜索。
1、 Java 程序設計實驗報告程序設計實驗報告題 目 計算器 姓 名 學 號 學 院 軟件學院 專 業 軟件工程 年 級 2009 級 指導教師 2010 年 4 月 9 日一、實驗目的一、實驗目的1、熟練掌握 java 面向對象編程。2、選擇合適的數據結構實現需求。3、熟練使用各種控制結構。4、掌握 GUI 組件、事件處理技術。二、實驗任務二、實驗任務1、設計一個簡易的計算器,可以進行四則運算:加、減、乘、除等(限于 十進制下) 程序要求: (1)應具有相應的界面,可參考下圖進行設計:圖示 1 圖示 2(2)操作符號定為:“+” , “-” , “*” , “/” , “(”,“)”等。 (按。
2、國際慣例 設計) (3)用戶通過點擊面板中的各種組件輸入的表達式,應在上方文本框中顯 示。 (4)當用戶點擊“=”時,文本框中之前的內容應清空,直接顯示表達式 運算結果。例如:輸入表達式“3+2*(8-5) ”之后按“=” ,顯示結果“9” 。(5)具有菜單欄,內有相應的編輯“復制” 、 “粘貼”等菜單,提供相應的 功能。 (6)以上部分為必須完成的內容。 2、選作功能,可參考 windows 系統附帶計算器:(1)具有相應的科學計算功能。例如“圖示 2”中的各種科學計算功能。三、開發工具與平臺三、開發工具與平臺1.開發工具開發工具:Eclipse 默認是一個和 Jbuilder 類似的 Ja。
3、va 開發工具,但它不僅僅 只 是 Java 開發工具,只要裝上相應的插件,eclipse 也可作為其它語言的開發 工具。如 C/C+插件(CDT)。 2.開發平臺:開發平臺:JDK1.5四、設計思路四、設計思路1.界面設計界面設計 (1)制作一個簡單的面板 JFrame,在其上面添加構造界面所需的各種組件 其構造方法為:calculate() super(); this.setBounds(10, 10, 300, 250); this.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE); this.setResizable(false); this。
4、.setTitle(“計算器“);init();/創建菜單及各種組件(如按鈕,文本框等)getContentPane().setLayout(new BorderLayout(3,3); getContentPane().add(panelCenter,BorderLayout.CENTER); getContentPane().add(panelNorth,BorderLayout.NORTH);(2)實現構造菜單及文本框等組件的函數 init(),如下實現: Public void Init() /菜單項的構造形成;editor.add(copy);editor.addSeparator(。
5、);editor.add(paste);editor.setMnemonic(E);look.setMnemonic(V);help.setMnemonic(H);copy.setAccelerator(KeyStroke.getKeyStroke(KeyEvent.VK_C,InputEvent.CTRL_M ASK);paste.setAccelerator(KeyStroke.getKeyStroke(KeyEvent.VK_P,InputEvent.CTRL_M ASK);help.add(about);bar.add(editor);bar.add(look);bar.add(hel。
6、p);setJMenuBar(bar);/將菜單添加到 JFrame;/* 接下來是文本或結果顯示區及 Backspace、功能鍵(CE、C)和的添加, 采用 GridBagLayout 布局方式,將它們放在北部 panelNorth 面板。其次,是數字鍵及其他功能鍵的的使用,我這里采用的是網格布局, setLayout(new GridLayout(4,6,5,5);將它們放在主面板中心區域。 這里給出 網格包布布局的兩個重要方法,由于代碼段較長,故將其他的代碼放在后面附 錄;private void makeShow(GridBagLayout gridBag, GridBagConstr。
7、aints constraints, Component component) gridBag.setConstraints(component, constraints);/ 網格包布布局;panelNorth2.add(component); private void addButton(GridBagLayout gridBag,/網格包布布局重要方法; GridBagConstraints constraints, Component component) gridBag.setConstraints(component, constraints); panelNorth1.add(c。
8、omponent); 總體界面如下:2.邏輯設計邏輯設計為了能夠得到我們想要的操作,比如讓那些數字參與運算,做什么運算等 等,我們就需要為每個按鈕添加響應事件,通過響應事件來完成我們預期的結 果。以下我們來分析下重要的事件是如何響應的:.String str = e.getActionCommand();/ TODO Auto-generated method stub if(str.equals(“Backspace“)/點擊 Backspace handerBackspace(); else if(str.equals(“CE“)/點擊了CE的功能是清除當前顯示的數值 bool = fal。
9、se; show.setText(“0“); else if(str.equals(“C“)/點擊了 C 的功能是清零 copyText=“; Div = 0.0; CalculateResult =“; bool = false; show.setText(“0“); else if(str.equals(“MC“)/MC 清楚存儲器內容 handerMC(); else if(str.equals(“MR“)/MR 將存于存儲器的值顯示在文本框中 handerMR(); else if(str.equals(“MS“)/MS 將顯示框得文字存于存儲器 handerMS(); else if。
10、(str.equals(“M+“)/M+將顯示框的數與存儲器中的數相加并進行 存儲handerM(); else if(“.“.indexOf(str)=0)/按下的是數字鍵或者小數點正負號 handerCenter(str); else if(str.equals(“%“)/將當前顯示框里的數字用百分比表示( x/100) String current = show.getText(); double a = 0; if(!current.isEmpty()a = Double.parseDouble(current);Double result =(Double) a/100;String。
11、 s4 = result.toString();if(!isInt(s4)show.setText(s4); else show.setText(s4.substring(0,s4.indexOf(“.“);bool = true; else handerOperation(str);/響應的是運算符;處理運算符操作 3.程序測試程序測試程序測試過程中無較大 BUG,基本上輕松搞定。五、實驗總結五、實驗總結這是我第一次正式的 java 程序設計實驗,感覺能夠把學到的東西用到實際 中是件非常有趣的事,更重要的是讓我們真正明白了學貴致用的道理。由于時間有限,本程序未能做到科學計算器,同時在這里也感。
12、謝老師的指導 和同學的幫助。6 6、附錄附錄public class calculate extends JFrame implements ActionListener /* param args*/ private JMenuBar bar = new JMenuBar(); private JMenu editor =new JMenu(“編輯(E)“); private JMenuItem copy =new JMenuItem(“復制“); private JMenuItem paste =new JMenuItem(“粘貼“); private JMenu look = new J。
13、Menu(“查看(V)“); private JMenu help = new JMenu(“幫助(H)“); private JMenuItem about = new JMenuItem(“關于“); private String copyText ; private JPanel panelWest= new JPanel(); private JPanel panelCenter = new JPanel();/放 Number 鍵 private JPanel panelNorth = new JPanel();/放功能鍵 1 與文本框 private JPanel panelNor。
14、th1 = new JPanel(); private JPanel panelNorth2 = new JPanel();/放顯示框private JPanel panelEast = new JPanel();/放運算鍵;private String strNorth = new String“Backspace“,“CE“,“C“;/ 功能鍵 1 private String strCenter = new String“7“,“8“,“9“,“4“,“5“,“6“,“1“,“2“,“3“,“0“,“+/-“,“.“; private String strEast = new Strin。
15、g“/“,“sqrt“,“*“,“%“,“- “,“1/x“,“+“,“=“; private StringstrWest = new String“MC“,“MR“,“MS“,“M+“;private JButton buttonCenter = new JButtonstrCenter.length; private JButton buttonEast= new JButtonstrEast.length; private JButton buttonNorth = new JButtonstrNorth.length; private JButton buttonWest = new JButtonstrWest.length;private String ch=new String();/保存當前運算符 private Double Div;/保存中間運算數 priva。
總結
以上是生活随笔為你收集整理的计算器java程序设计报告总体设计,java程序设计实验报告-计算器的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: java for foreach 效率_
- 下一篇: android中activity布局,A