【Java】FileUtils练习题2
* 信息查询
   1. 创建学生对象,拥有学生编号、学生姓名、出生年月、性别属性,提供get、set方法。
   1.1.创建4名学生对象,对象信息如下:
   
 学生编号 姓名      出生日期      性别
 --------------------------------------
   "s01"  "小赵"  "1991-01-01"  "男"
   "s02"  "小李"  "1990-10-21"  "男"
   "s03"  "小周"  "1990-12-30"  "女"
   "s04"  "小吴"  "1989-08-06"  "男"
  1.2.将上述4名学生对象放入ArrayList集合中,将集合中的数据按如下格式写入到项目下的stu.txt文件中
   stu.txt格式如下:
   s01,小赵,1991-01-01,男
   s02,小李,1990-10-21,男
   s03,小周,1990-12-30,女  
   s04,小吴,1989-08-06,男
  1.3.定义方法,遍历ArrayList集合,将年龄超过28岁的学生信息写入到18.txt文件中
   28.txt格式如下:
   s02,小李,1990年10月21日,男
   s04,小吴,1989年08月06日,男
   
   2.创建成绩Score类,读取成绩score.txt文件,将数据封装进score对象中,再将score对象存入HashSet集合中,
       要求:score.txt有重复数据,学生编号和课程名称相同即为重复数据,要求存入HashSet集合中要去除重复数据
       score.txt(学生编号、课程名称、考试时间、分数) 
       s01,语文,2018/10/30,82
       s01,数学,2018/10/30,52
       s01,英语,2018/10/28,96
       s01,英语,2018/10/28,96
       s01,英语,2018/10/28,96
       s02,语文,2018/10/30,56
       s02,英语,2018/10/28,58
       s02,英语,2018/10/28,58
       s03,语文,2018/10/28,88
       s03,数学,2018/10/30,62
       s03,英语,2018/10/28,32
       s04,数学,2018/10/30,56
       s04,英语,2018/10/28,26  
   
   2.1.将HashSet集合中去重后的数据写回score.txt
       s01,语文,2018/10/30,82
       s01,数学,2018/10/30,52
       s01,英语,2018/10/28,96
       s02,语文,2018/10/30,56
       s02,英语,2018/10/28,58
       s03,语文,2018/10/28,88
       s03,数学,2018/10/30,62
       s03,英语,2018/10/28,32
       s04,数学,2018/10/30,56
       s04,英语,2018/10/28,26  
   
   2.2.发现score.txt文件中,编号s03的学生语文考试时间错误,读取score.txt文件,
       将数据封装进score对象中将s03的语文考试时间修改为2018/10/30。其他数据保持不变。
       s01,语文,2018/10/30,82
       s01,数学,2018/10/30,52
       s01,英语,2018/10/28,96
       s02,语文,2018/10/30,56 
       s02,英语,2018/10/28,58
       s03,语文,2018/10/30,88
       s03,数学,2018/10/30,62
       s03,英语,2018/10/28,32
       s04,数学,2018/10/30,56
       s04,英语,2018/10/28,26 
  2.3.定义方法,遍历hashSet中的成绩数据,找出平均分最高的学号,键是学号,值是平均分。存入HashMap集合并返回。
   
   2.4.定义方法,遍历hashSet中的成绩数据,找出平均分高于60的学号,存入新的HashSet集合并返回。
  2.5.定义方法,遍历hashSet中的成绩数据,打印"语文"、"数学"、"英语"成绩的最高分。
   打印格式如下:
   语文最高分:82
   数学最高分:60
   英语最高分:88
   
   2.6.定义方法,遍历hashSet中的成绩数据,
     分别将语文成绩写入到file_1.txt中,
         s01,语文,2018/10/30,82
         s02,语文,2018/10/30,56 
         s03,语文,2018/10/30,88
         
         将数学成绩写入到file_2.txt中,
         s01,数学,2018/10/30,52
         ...
         
         将英语成绩写入到file_3.txt中,
         s01,英语,2018/10/28,96
         ...
   
   2.7.定义方法,遍历hashSet中的成绩数据,统计10月30日考试的课程数量并返回。
   
   2.8.定义方法,遍历hashSet中的成绩数据,打印"英语"比"语文"成绩高的学生编号。
   
   2.9.定义方法,遍历hashSet中的成绩数据,考试科目一共有3科,找出缺考的学生编号,将学生编号存入新的HashSet集合中并返回。
   
   3.0.定义方法,接收学生集合和成绩集合,将学生的学号、姓名、课程科目总数、总成绩写入sum.txt文件
   sum.txt
   s01,小赵,3,230
   s02,小李,2,114
   s03,小周,3,182
   s04,小吴,2,82 
   
   3.1.定义方法,接收学生集合和成绩集合,将不及格的学生信息和成绩按如下格式写入到not_pass.txt文件中
   notpass.txt
   s01,小赵,数学,2018/10/30,52
   s02,小李,语文,2018/10/30,56
   s02,小李,英语,2018/10/28,58
   s03,小周,英语,2018/10/28,32
   s04,小吴,数学,2018/10/30,56
   s04,小吴,英语,2018/10/28,26 
   
   3.2.定义方法,接收学生集合和成绩集合,将考试科目都不及格的学生信息写入到all_not_pass.txt文件中
   s02,小李
   s04,小吴
   
   3.3.定义方法,接收学生集合和成绩集合,打印每科都比"小吴"成绩好的学生编号、学生姓名。
 
                    
                     
                    
                 
                    
                 
                
            
         
         浙公网安备 33010602011771号
浙公网安备 33010602011771号