==1||链表.size()==2)
{
String num=(String)链表.getFirst();
resultShow.setText(""+num);}
如果按下等号切链表长度为3,则取中间的为运算符号,代码如下:
else if(链表.size()==3)
{
String number1=(String)链表.getFirst();
String number2=(String)链表.getLast();
String 运算符号=(String)链表.get(1);
进行加减乘除运算时判断符号类型,并返回计算后的数值。(部分代码)
if(运算符号.equals("+"))
{
n=n1+n2;
}
else if(运算符号.equals("/"))
{
n=n1/n2;
}
resultShow.setText(""+n);
菜单条中的设置和方法也主类一致.
在实现"科学型"与"标准型"之间的转换时应用的代码:
标准型.addActionListener(//标准型和科学型进行切换
new ActionListener(){
public void actionPerformed(ActionEvent e){//处理事件
new ComputerPad();//生成一个科学
计算机的对象 就会出现科学计算器的窗口
exit();
(3)NumberButton,OperationButton类主要是实现获取数字键上的数字和符号键上的符号,并返回按钮上的字符,用for循环直接可定义10个数字和4个运算符号,可以简化程序。
for (int i=0;i<4;i++)
{
operationButton[i]=new OperationButton(运算符号[i]);
operationButton[i].addActionListener(this);
}
四.运行调试与分析讨论
4.1 运行屏幕截图与分析:
1.运行主类后,进行运算,首先选中十进制,并从键盘上输入445后,如图:
图4.1
2.在将其转换成十六进制,选中十六进制后,如图显示:
图4.2
3.当选中十六进制后,键盘上的数字全部显示。经计算后校对结果准确。在选中八进制后,如图显示:
图4.3
4.经计算后校对结果准确。在选中二进制后,如图显示:
图4.4
5.经计算后校对结果准确。在点击正负号后,如图显示:
图4.5
6.由于原来得到的是正数,点击正负号后,变成负数。既主类实现了进制的转换,并且计算无误,测试成功。点击"编辑"则出现"复制 ""粘帖"功能均可实现。当点击"帮助"后出现"关于计算器"和"作者主页",当点击"作者主页"后,联网可进入baidu主页。当点击"关于计算器"后,弹出对话框。如图:
图4.6
7.点击"查看"下的"标准型"就可以进入下一个十进制计算页面。如图:输入了"1.9""+""3"按下"="后:
图4.7
8.在按下"1/x"后,显示如图:
图4.8
9.当点击"退格"后,显示如图:
图4.9
当按下"/""0"后,则返回初值"0"。即测试成功。
4.2 改进想法:
俩个计算器布局方式相同,显示不太相同,"科学型"的比"标准型"的更好看一点,可以改一下。在"标准型"中只能实现+,-,×,/和1/x运算,可以再添加sin,cos,tan,cot等运算,增强实用型。
五.设计体会与小结
大约一个星期的编写JAVA程序,发现自己不懂的地方很多,在做这个
课程设计之前,我可以独立编写一些小程序,还很有成就感,以为自己的java语言水平还可以。但是在完成这个设计的时候,我总是被一些小的,细的问题挡住前进的步伐,让我总是为了解决一个小问题而花费很长的时间,甚至做到晚上二点多钟,最好猛然发现自己缺少一个定义或者还要查阅其他的书籍才能找出解决的办法。例如,我定义了一个链表,可是向里面添加东西的时候,总是出错,后来在上机的时候问老师,才知道链表没有初始化,这是自己的粗心造成的。我在做设计的过程中发现有很多东西,我都还不知道。在做进制转换时不知道函数怎么写,是我上网查到的,再经过修改查到我的