java汇率转换课程设计报告lx.docx

上传人:b****6 文档编号:5585978 上传时间:2022-12-28 格式:DOCX 页数:11 大小:72.46KB
下载 相关 举报
java汇率转换课程设计报告lx.docx_第1页
第1页 / 共11页
java汇率转换课程设计报告lx.docx_第2页
第2页 / 共11页
java汇率转换课程设计报告lx.docx_第3页
第3页 / 共11页
java汇率转换课程设计报告lx.docx_第4页
第4页 / 共11页
java汇率转换课程设计报告lx.docx_第5页
第5页 / 共11页
点击查看更多>>
下载资源
资源描述

java汇率转换课程设计报告lx.docx

《java汇率转换课程设计报告lx.docx》由会员分享,可在线阅读,更多相关《java汇率转换课程设计报告lx.docx(11页珍藏版)》请在冰豆网上搜索。

java汇率转换课程设计报告lx.docx

java汇率转换课程设计报告lx

软件学院

课程设计报告书

课程名称面向对象程序设计

设计题目汇率转换查询程序

专业班级软件08-2班

学号0820010206

姓名LX

指导教师于美娜

2010年12月

1设计时间1

2设计目的1

3设计任务1

4设计内容1

4.1概要设计1

4.2程序整体设计说明1

4.2.1程序基本流程图2

4.2.2程序中所用类及方法说明2

5.总结与展望8

6.程序设计代码9

参考文献12

成绩评定12

1设计时间

2010年12月13日-2010年12月26日

2设计目的

《面向对象程序设计课程设计》的教学目的是培养学生软件系统开发方案综合设计能力和创新精神。

在老师的启发和引导下,学生能自主地进行科技文献检索,进行方案设计、编写代码、调试程序、对方案进行综合分析与评述等。

3设计任务

汇率转换查询程序。

要求如下:

(1)使用图形用户界面实现。

(2)可以查询人民币与美元、日元、欧元、港币等目前国际上常用流通货币的兑换(至少要实现十种)。

例如,100元人民币可兑换多少美元,100美元可兑换多少人民币。

(3)可以查询各种货币两两之间的兑换情况(兑换情况如

(2)所给的例子),如美元与韩元之间,日元与欧元之间(至少实现十对)。

(4)系统使用的GUI组件不得少于5种,越全面越好,但要合适(和谐界面)。

4设计内容

4.1概要设计

Java程序编辑器是:

图形界面、流与文件等技术的综合应用。

图形界面的实现:

考虑到简单、实用、高效等特点,就选择了Swing来完成实现,在选择组件上,选用了Jframe作为主要的部件。

主窗口含有一任务栏,任务栏包括兑换金额,通过数字框输入金币金额,采用JComboBox()构造方法用来选择输入金币的种类和兑换后输出金额的种类,金币的种类包括:

美元、人民币、日元、欧元、英镑、瑞郎、澳元、加元、港币、坡元、纽元、瑞典克朗、韩元、泰铢、台币等,之后点击兑换按钮输出兑换金额。

程序整体在设计类的时候,为了便利于用户操作,设立了一个类,简单明了,有利于

对程序的理解,采用了JComboBoxJFrameJLabelJTextFieldJButton等组件。

在编写程序前通过上网查找美元、日元、欧元、英镑、瑞郎、澳元、加元、港币、坡元、纽元、瑞典克朗、韩元、泰铢、台币等货币与人民币之间的汇率转换。

4.2程序整体设计说明

421程序基本流程图

422程序中所用类及方法说明

1.程序中的类:

ExchanageRate

继承Applet

实现ActionListener接口

本程序共有一个类作为总体框架,添加JtextField、JcomboBox、Jlabel、Panel等组件实

现整体框架设计。

部分代码如下:

publicclassExchanageRateextendsAppletimplementsActionListenef

privateJFrameframe=newJFrame("匚率转换”);

privateJTextFieldtext1=newJTextField();

privateJTextFieldtext2=newJTextField();

privateStrings[]={"美元","人民币","日元",

"欧元","英镑","瑞郎","澳元","加元","港币","坡元","纽元","瑞典克朗","韩元","泰铢

privatefloatrate[]={1,(float)6.8276,(float)89.1,(float)0.6841,(float)0.615.

……(float)33.12,(float)32.2};privateJComboBoxcb=nuII;

privateJComboBoxcb1=null;

privatedoublesum;//兑换后的金额

JLabelnum=newJLabel("兑换金额");

JLabelbnum=newJLabel('兑换后的金额为");

Panelp1;

Panelp5;

JButtonbutton;

}

2.主要成员变量:

私有变量:

frame,标题为”汇率转换”作为总体框架向其中添加组件。

内容如下:

privateJFrameframe=newJFrame(汇率转换");

私有变量text1,text2,作为两个单行输入文本,分别输入兑换金额”兑换后金额

内容如下:

privateJTextFieldtext仁newJTextField();

privateJTextFieldtext2=newJTextField();

私有变量:

字符串型数组s[],作为下拉选框的货币名称内容。

内容如下:

privateStrings[]={"美元","人民币","日元",

"欧元","英镑","瑞郎","澳元","加元","港币","坡元","纽元","瑞典克朗","韩元","泰铢

私有变量:

浮点型数组rate[],作为变换汇率比例。

内容如下:

(float)

privatefloatrate[]={1,(float)6.8276,(float)89.1,(float)0.6841,(float)0.615,(float)1.0346,(float)1.0956

1.0601,(float)7.7503,(float)1.3913,(float)1.3794,(float)7.1208,(float)0.116,(float)33.12,(float)32.2};

私有变量:

JcomboBox型cb和cb1。

将按钮或可编辑字段与下拉列表组合的组件。

用户可以从下拉列表中选择值,下拉列表在用户请求时显示。

如果使组合框处于可编辑状态,则组合框将包括用户可在其中键入值的可编辑字段。

内容如下:

privateJComboBoxcb=nuII;

privateJComboBoxcb1=null;

privatedoublesum;//兑换后的金额

公有变量:

四个标签作为注释信息。

内容如下:

JLabelnum=newJLabel("兑换金额");

JLabelmoney=newJLabel('由");

JLabelbmoney=newJLabel("兑换至");

JLabelbnum=newJLabel('兑换后的金额为");

3•主要的成员方法:

init()方法,为整体框架添加所定义的组件。

部分内容如下:

publicvoidinit()

{

cb=newJComboBox(s);

cb1=newJComboBox(s);

text1=newJTextField(15);

text2=newJTextField(10);

p1=newPanel();

p5=newPanel();

p1.add(num,BorderLayout.WEST);

add(p1,BorderLayout.NORTH);

button=newJButton("兑换");

p4.add(button,BorderLayout.WEST);

add(p4);

p5.add(bnum,BorderLayout.WEST);

注册监听器部分内容。

cb.addActionListener(this);

cb1.addActionListener(this);

button.addActionListener(this);

}

4.实现的接口方法:

actionPeformed()方法,实现监听的方法。

选择兑换币种后实现兑换率转换部分代码如下:

publicvoidactionPeformed(ActionEvente){

JButtonbutto门仁(JButton)e.getSource();

java.text.DecimalFormatdf=newjava.text.DecimalFormat("#.OOOOOO");

Stringtext=text1.getText();

Stringsum1;

intcbx=cb.getSelectedIndex();//记录下标

intcb1x=cb1.getSelectedIndex();

if(button1==button)

{

sum=Float.parseFloat(text);

if(sum>0)

sum1=df.format((double)rate[cb1x]/(double)rate[cbx]*sum);text2.setText(sum1);

}

else

text2.setText("你输入的金额错误!

");

}

}

5.程序运行主要界面如下:

a.主界面,如图1.2所示

图1.2程序主界面

b.输入界面,如图1.3所示

图1.3输入界面

C.输出界面,如图1.4所示

图1.4输出界面

 

5.总结与展望

通过2周的上机时间终于完成了面向对象程序设计这门课程课程设计,整个过程中有喜有忧,起初在看到自己课程设计的题目的时候是一头雾水,根本不知道从何下手,之后通过同学的帮助和慢慢的探索终于有了起点,首先通过课程要求应该大体设计个主界面的窗口,然后添加“兑换金额”和所需要输入金币金额的数字框,之后根据题中要求需要添加“由输入金额的种类兑换至所需兑换后金额的种类”输入金额的种类与兑

换后金额的种类采用JcomboBox组件添加,然后添加个兑换的button按钮,最后输入“兑换后的金额为”。

通过上网查找了日元、欧元、英镑、瑞郎、澳元、加元、港币、坡元、纽元、瑞典克朗、韩元、泰铢、台币等通用货币,之后将这些货币添加到JcomboBox组件中,查阅了通

用货币与人民币之间的汇率情况,最后通过上机调试,调试过程中也出现了许多错误,如:

输入了金币金额也选择了金币种类与兑换后金币的种类,点击兑换按钮后没有什么反应,没有输出结果,还有金币金额与兑换后金币金额相同等等,最后通过老师与同学的帮助也终于完成这个java程序。

通过这次的课程设计让我学会了遇到自己不知道从何下手的问题时,应该先从大体上分析,也就是由大体到细微,由远及近,由浅入深的办法来解决问题,此次的课程设计业锻炼了自己的动手能力,同时也认识到了自己能力的不足,知识面的匮乏。

在以后的学习中不能再闭门造车,应该拓宽自己的知识,拓展思维,开阔自己的视野,多锻炼自己的动手能力,此次课程设计为我在以后的学习生活中提供了宝贵的财富。

6.程序设计代码

importjava.applet.*;

importjava.awt.*;

importjava.awt.event.ActionEvent;

importjava.awt.event.ActionListener;

importjavax.swing.JButton;

importjavax.swing.JComboBox;

importjavax.swing.JFrame;

importjavax.swing.JLabel;

importjavax.swing.JTextField;

publicclassExchanageRateextendsAppletimplementsActionListener

{

privateJFrameframe=newJFrame("汇率转换");

privateJTextFieldtext仁newJTextField();

privateJTextFieldtext2=newJTextField();

privateStrings[]={"美元”,”人民币”,”日元”,”欧元”,”英镑”,"瑞郎",”澳元”,"加元”,"港币”,”坡

元”,”纽元”,”瑞典克朗”,"韩元”,”泰铢”,”台币"};

privatefloatrate[]={1,(float)68276,(float)89.1,(float)0.6841,(float)0.615,(float)1.0346,(float)1.0956,(float)

1.0601,(float)7.7503,(float)1.3913,(float)1.3794,(float)7.1208,(float)0.116,(float)33.12,(float)32.2};

privateJComboBoxcb=null;

privateJComboBoxcb1=null;

privatedoublesum;//兑换后的金额

JLabelnum=newJLabel("兑换金额");

JLabelmoney=newJLabel("由");

JLabelbmoney=newJLabel("兑换至”);

JLabelbnum=newJLabel("兑换后的金额为”);

Panelp1;

Panelp2;

Panelp3;

Panelp4;

Panelp5;

JButtonbutton;

publicvoidinit()

{

cb=newJComboBox(s);

cb1=newJComboBox(s);text1=newJTextField(15);

text2=newJTextField(10);

p1=newPanel();p2=newPanel();p3=newPanel();p4=newPanel();p5=newPanel();

p1.add(num,BorderLayout.WEST);p1.add(text1,BorderLayout.EAST);p2.add(money,BorderLayout.WEST);p2.add(cb,BorderLayout.EAST);

p3.add(bmoney,BorderLayout.WEST);p3.add(cb1,BorderLayout.EAST);add(p1,BorderLayout.NORTH);add(p2,BorderLayout.CENTER);add(p3,BorderLayout.SOUTH);button=newJButton("兑换");p4.add(button,BorderLayout.WEST);add(p4);

p5.add(bnum,BorderLayout.WEST);

p5.add(text2,BorderLayout.EAST);

add(p5);

cb.addActionListener(this);

cb1.addActionListener(this);

button.addActionListener(this);

}

publicvoidactionPerformed(ActionEvente){

JButtonbutton1=(JButton)e.getSource();

java.text.DecimalFormatdf=newjava.text.DecimalFormat("#.000000");

Stringtext=text1.getText();

Stringsum1;

intcbx=cb.getSelectedIndex();〃记录下标

intcb1x=cb1.getSelectedlndex();

if(button1==button)

{

sum=Float.parseFloat(text);

if(sum>0)

{

sum仁df.format((double)rate[cb1x]/(double)rate[cbx]*sum);

text2.setText(sum1);

}

else

text2.setText("你输入的金额错误!

”);

}

}

}

参考文献

[1]《Java6程序设计实践教程》作者:

刘万军,郑少京,王松波,梁清华等清华大学出版社

[2]《java2程序设计教程》作者:

HarveyM.Deitel和PaulJ.Deitel机械工业出版社

[3]JSP网站编程教程[M].第1版作者:

屈辉立,陈可明,石武信.北京希望电子出版社,2005

[4]XX网站

成绩评定

成绩

教师签字

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 经管营销 > 经济市场

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1