学生成绩分析程序(javaFX实例)



学生成绩分析程序(javaFX实例)https://github.com/JeremieAstray/studentScoreAnalysis (内含测试数据)

1. 题目介绍与分析

1.1 题目介绍

①已经提供的原始数据:

班级成绩单文件

该文件为文本文件,存储某个班的所有学生某门课程的成绩。

文件中每行存储一个学生的成绩,包括:学号、姓名和成绩,中间用英文逗号分隔。

②实验要求:

(1) 程序使用图形用户界面。

(2) 文件操作与数据统计功能

<1> 打开上面给出的文本文件,将其中的成绩数据加载到内存。

<2> 把内存中的成绩数据另存为格式相同的另一个文本文件。

<3> 把内存中的成绩数据另存为一个二进制的对象文件。

<4> 打开已经保存的二进制的对象文件,将其中的成绩数据加载到内存。

<5> 统计分析已经加载到内存的班级的成绩,包括:最高分、最低分、平均分、各成绩等级的人数和百分比。

(3) 图形统计功能

<1> 对加载到内存的成绩单进行“柱形图”分析

<2> 对加载到内存的成绩单进行“饼图”分析

(4) 查询排序功能

<1> 在“查询输入框”输入“学号、姓名或成绩”的全部或部分,成绩列表中只显示包括输入数据的成绩项目。

<2> 点击表格的“列标题”,可以自动按该列排序,2次点击可以切换“升序”和“降序”。


1.2 实验要求分析

(1)文件读写功能

(2)数据分析功能

(3)图形统计功能

(4)插入排序功能

2. 程序静态结构

 采用javaFX的MVC框架进行程序设计,将界面,模型和控制器分离,然后分步设计程序

【java桌面开发】学生成绩分析程序(javaFX初试)

3. 程序主要功能

1)   读写文档功能:能够读取和保存.txt或者.dat格式的文本文档或者二进制对象文件

2)   信息处理功能:将从文本文档或者二进制对象文件读取的信息进行分析并且载入到页面中。

3)  图形统计功能:将分析过的信息处理为饼图和柱形图,并且显示出来

4)  查询排序功能:只要在搜索栏输入与学号,姓名和成绩相关的信息,能够查询到对应的条目。点击表中的列标题可以对内容进行排序(升序或者降序)。

*5) 修改成绩功能:能对应经载入到程序中的内容就行修改,能修改成绩,并且重新分析内容,载入到分析栏中。并且能保存到文件中。

在测试该程序前,先安装jdk8或者jre8。

4. 程序测试

【java桌面开发】学生成绩分析程序(javaFX初试)

【java桌面开发】学生成绩分析程序(javaFX初试)

5. 实验总结

      通过这次的实验,我初步的掌握了现行主流的技术javafx的用法。因为在国内的应用当中,javafx的应用非常的少,所以在学习当中只能通过对官方例子程序的分析和查询API文档来进行学习,过程中使用了JavaFX Scene Builder的官方界面生成程序,极大地促进了对javafx的掌握。完成这个程序的过程中,我体会到了学习一门新的知识的窍门:应该从大体上了解这个工具有什么用途,然后再从实际应用出发,再到每个细节的调整。这是我这次实验的心得,希望在以后的程序中能学到更多的知识。