java实现学生信息统计系统
2017-09-12 19:38
211 查看
学生信息查询
功能:
1.通过id修改学生信息2.获取指定学生的成绩
3.获取指定学号的成绩
4.根据姓名修改指定学科的成绩
5.删除指定学生及其成绩
6.统计所有成绩相等的人数
7.获取到所有学生某一科的成绩
代码块
package com.lanou.work01; import java.util.ArrayList; import java.util.HashSet; public class ProgramSystem { public static void main(String[] args) { ArrayList<Student> listStudent = new ArrayList<Student>(); // 学生小李 Student student = new Student(1, "小李"); Subject subject1 = new Subject("语文", 90.7); Subject subject2 = new Subject("数学", 10.5); student.list.add(subject1); student.list.add(subject2); // 学生小王 Student student2 = new Student(1, "小王"); Subject subject3 = new Subject("语文", 20.7); Subject subject4 = new Subject("数学", 10.5); student2.list.add(subject3); student2.list.add(subject4); // 装进大的数组 listStudent.add(student); listStudent.add(student2); System.out.println(listStudent.size()); Control control = new Control(listStudent); //以下注释内容为功能测试 // control.getScore(student, "语文"); // System.out.println("-------------------------"); // control.getId(1, "数学"); // System.out.println("-------------------------"); // control.upDateName(1, "小陈"); // System.out.println(student.nameString); // System.out.println("-------------------------"); // control.upDateScore("小陈", "语文", 0.0); // System.out.println(student); // control.removeStudent(student); // System.out.println(listStudent); // control.countStudnet(student, "语文"); control.fun("语文"); } } class Control { // 存放学生的数组 ArrayList<Student> listStudent = new ArrayList<Student>(); public Control(ArrayList<Student> listStudent) { this.listStudent = listStudent; } //展示方法 public void show(){ System.out.println("*************************"); } // 获取指定学生的成绩 public void getScore(Student student, String bookName) { for (Student student2 : listStudent) { if (student.nameString.equals(student2.nameStri a486 ng)) { for (Subject sub : student.list) { // 每一个成绩类对象 if (bookName.equals(sub.nameBook)) { System.out.println(sub.Score); } } } } } // 获取指定学号的成绩 public void getId(int id, String bookName) { for (Student student2 : listStudent) { if (student2.id == id) {// 如果id相等话 for (Subject sub : student2.list) { // 每一个成绩类对象 if (bookName.equals(sub.nameBook)) { System.out.println(sub.Score); } } } } } // 根据id修改姓名 public void upDateName(int id, String name) { for (Student student : listStudent) { if (student.id == id) {// 如果想等的话 student.nameString = name; } } } // 根据姓名修改指定学科的成绩 public void upDateScore(String name, String bookName, Double score) { for (Student student : listStudent) { if (student.nameString.equals(name)) { for (Subject subject : student.list) { if (subject.nameBook.equals(bookName)) { subject.Score = score; } } } } } // 删除指定学生及其成绩 public void removeStudent(Student student) { Student student3 = new Student(); System.out.println(listStudent); for (Student student2 : listStudent) { if (student2.nameString.equals(student.nameString)) { student3 = student2; } } listStudent.remove(student3); } // 统计所有成绩相等的人数 public void countStudnet(Student student, String namString) { int count = 1; // 创建一个数组 double array[] = new double[listStudent.size()]; System.out.println(listStudent.size()); for (Student student2 : listStudent) { for (int i = 0; i < array.length; i++) { System.out.println("数组的长度"+array.length); for (Subject subject : student2.list) { if (subject.nameBook.equals(namString)) { System.out.println(namString); array[i] = subject.Score; System.out.println(array[i]); } } } } // 第一个和第二个比较 for (int i = 0; i < array.length; i++) { for (int j = i + 1; j < array.length; j++) { if (array[i] == array[j]) { count++; } } } System.out.println("语文成绩相等的人数为:" + count); } // 获取到所有学生的成绩 public void fun(String nameString) { HashSet<Double> set = new HashSet<Double>(); for (Student student2 : listStudent) { for (Subject subject : student2.list) { if (nameString.equals(subject.nameBook)) { set.add(subject.Score); } } } System.out.println(set); } } //学生类 class Student { String nameString; int id; ArrayList<Subject> list = new ArrayList<Subject>(); public Student(int id, String nameString) { this.id = id; this.nameString = nameString; } @Override public String toString() { // TODO Auto-generated method stub for (Subject subject : list) { return "姓名:" + nameString + "学号:" + id + "成绩单:" + subject.nameBook + subject.Score; } return null; } public Student() { } } // 学科类 class Subject { String nameBook; double Score; public Subject(String nameBook, double score) { super(); this.nameBook = nameBook; Score = score; } }
相关文章推荐
- Java60行代码实现swing+mysql学生信息管理系统
- java swing mysql实现的学生信息管理系统v1.0附带视频指导教程
- Java 实现学生信息管理系统
- java学生信息管理系统设计与实现
- Java swing mysql实现的学生学院班级信息管理系统V1.1附带视频运行指导教程
- java(swing)+mysql实现学生信息管理系统
- C下学生管理系统:从文件中读取30位学生的信息(含邮箱),并实现简单的增、删、查找、统计(邮箱使用人数)。---附程序哦!
- Java+MySQL实现学生信息管理系统源码
- java.swing和Java.awt实现学生信息管理系统
- python下学生管理系统:从文件中读取30位学生的信息(含邮箱),并实现简单的增、删、查找、统计(邮箱使用人数)。---附程序哦!
- java swing mysql实现的学生信息管理系统v1.0附带视频指导教程
- java实现简单的学生信息管理系统
- 学生信息管理系统--(Java+MySQL实现)
- Java swing mysql实现的学生学院班级信息管理系统V1.1附带视频运行指导教程
- 学生信息管理系统--(Java+MySQL实现)
- java(swing)+ mysql实现学生信息管理系统源码
- JavaSwing+Hibernate实现简单的学生信息管理系统
- 两步实现Log4j记录java控制台输出的系统所有异常信息和自定义记录日志---->非常实用,强烈推荐阅读
- 用汇编实现学生信息管理系统
- c++ stl list实现简单的学生信息管理系统