案例初步分析报告
一、系统功能讲解
从对于代码的分析中,可以得出这个系统可以实现的功能如下:
(1) 添加学生功能
在输入框内输入1,可以开始添加新学生,输入新添加学生的姓名、年龄、性别、学号、专业、GPA等信息;
系统将创建一个新的Student的对象 ,并且将新加入的同学详细信息添加StudentManagementSystem中。
Enter 1 to add a student
Enter 2 to remove a student
Enter 3 to search for a student by name
Enter 4 to search for a student by major
Enter 5 to search for a student by GPA
Enter 6 to show all students
Enter 7 to exit
1
Enter student name:
张三
Enter student age:
20
Enter student gender:
男
Enter student ID:
001
Enter student major:
计算机科学
Enter student GPA:
3.5
Student added successfully!
(2) 删除学生功能
在输入框输入2,可以通过输入学生学号,然后遍历学生列表来删除这个学生的信息。
Enter 1 to add a student
Enter 2 to remove a student
Enter 3 to search for a student by name
Enter 4 to search for a student by major
Enter 5 to search for a student by GPA
Enter 6 to show all students
Enter 7 to exit
2
Enter student ID to remove:
001
Student removed successfully!
(3) 搜索学生信息
在输入框输入3、4、5,可以分别通过输入学生姓名、通过输入专业、通过输入GPA,然后调用sms对象的相应方法在学生列表中找到相匹配的学生,并且打印出该学生的相关信息。
Enter 1 to add a student
Enter 2 to remove a student
Enter 3 to search for a student by name
Enter 4 to search for a student by major
Enter 5 to search for a student by GPA
Enter 6 to show all students
Enter 7 to exit
3
Enter student name to search:
John
Search results:
Search by name: Student{name='John', age=20, gender='Male', id='001', major='Computer Science', gpa=3.5}
(4) 展示全部的学生信息
在输入框输入6,可以展示StudentManagementSystem 中的所有学生信息。
Enter 1 to add a student
Enter 2 to remove a student
Enter 3 to search for a student by name
Enter 4 to search for a student by major
Enter 5 to search for a student by GPA
Enter 6 to show all students
Enter 7 to exit
6
All students: Student{name='John', age=20, gender='Male', id='001', major='Computer Science', gpa=3.5}, Student{name='Mary', age=21, gender='Female', id='002', major='Mathematics', gpa=3.8}, Student{name='Tom', age=19, gender='Male', id='003', major='Physics', gpa=3.2}
(7)退出程序
输入框输入7,直接退出程序。
Enter 1 to add a student
Enter 2 to remove a student
Enter 3 to search for a student by name
Enter 4 to search for a student by major
Enter 5 to search for a student by GPA
Enter 6 to show all students
Enter 7 to exit
7
Exit Successfully!
二、基本语法讲解
1.Scanner
本系统通过Scanner类从控制台获得用户的输入数据,在代码中进行读取。
import java.util.Scanner;
Scanner scanner = new Scanner(System.in);
2.控制语句
(1)while语句:用于持续循行程序直到程序被退出。
while (running) {}
(2)switch语句;用于用户进行选择进而跳转到不同的操作。
switch (choice) { case 1: break;}
(3)if语句:多见对于某些程序需要进行判断输出不同的结果。
if () { } else {}
(4)for语句:进行循环。
for (Student s : searchResults) { System.out.println(s); }
3.输入输出
可以用来打印数据
System.out.println();
4.对象创建
用来创造一个新对象来实例化类,并利用类定义中的属性和方法来实现具体的功能。
StudentManagement sms = new StudentManagement();
5.类定义
类定义将数据和操作数据的方法捆绑在一起,将复杂的问题简化为一组属性和行为。
public class Student{}
6.集合框架
提供了一系列用于存储、检索和操作数据的接口和类。
import java.util.ArrayList;import java.util.List;
三、类功能讲解
1.Student 类
(1)Student 类用于表示单个学生的信息,包含以下属性:name:学生姓名、age:学生年龄、gender:学生性别、id:学生学号、major:学生专业、gpa:学生 GPA;
(2)Student 类还提供了构造函数、getter 和 setter 方法以及 toString 方法来方便地输出学生信息。
public class Student {
private String name;
private int age;
private String gender;
private String id;
private String major;
private double gpa;
public Student(String name, int age, String gender, String id, String major, double gpa) {
this.name = name;
this.age = age;
this.gender = gender;
this.id = id;
this.major = major;
this.gpa = gpa;
}...
public String toString() {
return "Name: " + name + ", Age: " + age + ", Gender: " + gender + ", ID: " + id + ", Major: " + major + ", GPA: " + gpa;
}
}
2. StudentManagementSystem 类
StudentManagementSystem 类用来管理关于用户一系列操作的学生的信息数据,有以下方法:
addStudent添加一个新学生、removeStudent删除一个学生信息、
searchByName(String name)按姓名找学生、searchByMajor按照专业找学生、searchByGpa按Gpa找学生、getStudents获得系统中全部学生。