学生信息管理系统(集合版)
Student.java
复制代码
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49package com.lanqiao.demo; /** * 学生类 * * @author qichunlin * */ public class Student { private String name;// 姓名 private double[] score = new double[3];// 三门课程成绩 // get set public String getName() { return name; } public void setName(String name) { this.name = name; } public double[] getScore() { return score; } public void setScore(double[] score) { this.score = score; } // 有参构造方法 public Student(String name2, double[] score2) { super(); // 传入的参数跟类里定义的属性区分开 this.name = name2; this.score = score2; } // 无参构造方法 public Student() { super(); } // 有参构造函数 public String toString() { return "t" + this.name + "t" + this.score[0] + "t" + this.score[1] + "t" + this.score[2]; } }
Manager.java
复制代码
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161package com.lanqiao.demo; import java.util.ArrayList; import java.util.List; import java.util.Scanner; public class Manager { List stuList = new ArrayList(); Scanner input = new Scanner(System.in); public void menu() { System.out.println("======学生信息管理系统======"); System.out.println("1.添加学生"); System.out.println("2.查询学生"); System.out.println("3.修改学生"); System.out.println("4.删除学生"); System.out.println("5.退出系统"); System.out.println("请选择:"); int num = input.nextInt(); switch (num) { case 1: System.out.println("添加学生"); //创建学生对象 Student stu = new Student(); //录入学生姓名 System.out.print("请输入学生姓名:"); String name = input.next(); double[] scores = stu.getScore(); for (int i = 0; i < scores.length; i++) { System.out.print("请输入学生"+(i+1)+"门成绩:"); scores[i] = input.nextDouble(); } //将信息保存在学生对象里面 stu.setName(name); stu.setScore(scores); //再把学生对象放进去集合里面 input(stu); break; case 2: display(); break; case 3: System.out.println("修改学生"); display(); System.out.println("请输入需要修改学生的编号:"); int n = input.nextInt(); update(n); break; case 4: System.out.println("删除学生"); System.out.println("请选择删除的方式(1.根据编号 2.根据姓名)"); int key = input.nextInt(); //删除操作之前显示一下学生信息 display(); //选择删除方式 switch (key) { case 1: System.out.println("请输入删除的编号 "); int index = input.nextInt(); //在方法中定义了异常 数组下标越界的问题 try { delete(index); } catch (Exception e) { e.printStackTrace(); } break; case 2: System.out.println("请输入需要删除的学生姓名"); String delName = input.next(); delete(delName); break; default: break; } break; case 5: System.exit(0); System.out.println("Welcome to use this system Next"); break; default: break; } System.out.println("是否继续(Y/N):"); String flag = input.next(); if(flag.equalsIgnoreCase("y")) { menu(); }else { System.out.println("Welcome to use this system Next"); } } // 学生成绩录入方法,参数stus为待录入信息学生集合 public void input(Student stus) { System.out.println(); stuList.add(stus); } // 学生成绩修改方法,参数index为修改的学生信息索引,另外本方法会在修改前显示该学生信息 public void update(int index) { Student s = (Student)stuList.get(index); System.out.println("请输入修改后的名字"); String name = input.next(); s.setName(name); stuList.set(index, s); System.out.println("==========修改后显示成绩信息=========="); System.out.println(s.getName()+"t"+s.getScore()[0]+"t"+s.getScore()[1]+"t"+s.getScore()[2]); } // 显示所有学生成绩信息方法 public void display() { System.out.println("编号t"+"姓名t"+"成绩1t" +"成绩2t" +"成绩3t"); for (int i = 0; i < stuList.size(); i++) { Student s = (Student) stuList.get(i); System.out.println(i+"t"+s.getName()+"t"+s.getScore()[0]+"t"+s.getScore()[1]+"t"+s.getScore()[2]); } } // 根据索引删除在集合中删除学生的方法 public void delete(int index) throws Exception { if(index>=0 && index<stuList.size()) { stuList.remove(index); }else { throw new Exception("你输入的编号有误,请重新输入!!!"); } } // 根据姓名删除在集合中删除学生的方法 public void delete(String name) { for (int i = 0; i < stuList.size(); i++) { Student st = (Student) stuList.get(i); if(st.getName().equals(name)) { stuList.remove(st); } } } }
Test.java
复制代码
1
2
3
4
5
6
7
8
9
10
11
12
13
14package com.lanqiao.demo; /** * @author qichunlin * */ public class Test { public static void main(String[] args) { //创建管理类对象 Manager m = new Manager(); m.menu(); } }
转载于:https://www.cnblogs.com/qichunlin/p/8708420.html
最后
以上就是欣喜书包最近收集整理的关于2018.4.2 学生信息管理系统(集合版) 完整篇的全部内容,更多相关2018.4.2内容请搜索靠谱客的其他文章。
本图文内容来源于网友提供,作为学习参考使用,或来自网络收集整理,版权属于原作者所有。
发表评论 取消回复