当前位置:   article > 正文

用JAVA做一个简单的学生管理系统_做一个简单的管理系统

做一个简单的管理系统

目录

一、需求

二、所用知识点

三、实现步骤分析

四、实现

4.1管理员类

4.2学生类 

4.3登录实现 

4.4初始化学生和管理员 

4.5显示菜单

 4.6查询学生

4.6.1查询所有学生

 4.6.2查询指定学生

4.7修改学生

4.8删除学生

4.9添加学生 

 五、学生管理类的代码如下:


一、需求

  1. 实现管理员登录系统

    请登录学生管理系统!

    请输入用户名:

    请输入密码:

    登录后欢迎谁登录成功!

  2. 查看菜单

    1 新增学生

    2 修改学生

    3 删除学生

    .....

    -1 退出系统

  3. 选择菜单操作

    输入1,2,3等

  4. 新增学生信息

  5. 修改学生信息

  6. 删除学生信息

  7. 查询学生信息

  8. 退出系统

二、所用知识点

1 变量

相当于盒子,存放一个值得。分为成员变量(类的属性)和局部变量(方法内定义变量、形参,代码块中定义变量) 。成员变量有默认值,而局部变量没有默认值。

2 选择结构

if

if else

if else if else

switch

3 循环结构

while

do while

for index

foreach

4 方法

定义方法 调用方法

5 数组

定义、初始化、取值、设置、遍历

6 面向对象基础

定义类 创建对象 赋值和或者值 调用方法 构造函数 封装(private setter settter) this String

三、实现步骤分析

1.创建管理员类 2.创建学生类 3.校验是否登录成功 4.菜单展示方法 5.菜单功能-查询学员信息 6.菜单功能-新增学员信息 7.菜单功能-修改学员信息 8.单功能-删除学员信息

四、实现

4.1管理员类

  1. public class Admid {
  2. private String user;//用户名
  3. private String password;//密码
  4. public Admid(String user, String password) {
  5. this.user = user;
  6. this.password = password;
  7. }
  8. public Admid() {//无参构造
  9. }
  10. public String getUser() {
  11. return user;
  12. }
  13. public void setUser(String user) {
  14. this.user = user;
  15. }
  16. public String getPassword() {
  17. return password;
  18. }
  19. public void setPassword(String password) {
  20. this.password = password;
  21. }
  22. }

4.2学生类 

  1. public class Student {
  2. private String id;
  3. private String name;
  4. private int age;
  5. private String sex;
  6. public Student(){}
  7. public Student(String id, String name, int age, String sex) {
  8. this.id = id;
  9. this.name = name;
  10. this.age = age;
  11. this.sex = sex;
  12. }
  13. public String getId() {
  14. return id;
  15. }
  16. public void setId(String id) {
  17. this.id = id;
  18. }
  19. public String getName() {
  20. return name;
  21. }
  22. public void setName(String name) {
  23. this.name = name;
  24. }
  25. public int getAge() {
  26. return age;
  27. }
  28. public void setAge(int age) {
  29. this.age = age;
  30. }
  31. public String getSex() {
  32. return sex;
  33. }
  34. public void setSex(String sex) {
  35. this.sex = sex;
  36. }
  37. @Override
  38. public String toString() {
  39. return
  40. "学号" + id +
  41. ", 姓名='" + name + '\'' +
  42. ", 年龄=" + age +
  43. ", 性别='" + sex + '\''
  44. ;
  45. }
  46. }

4.3登录实现 

  1. /**
  2. * 登录
  3. */
  4. public static void logon(){
  5. Scanner sc = new Scanner(System.in);
  6. System.out.println("===欢迎来到学生管理系统===");
  7. System.out.println("请输入用户名:");
  8. String user = sc.next();
  9. System.out.println("请输入密码");
  10. String password = sc.next();
  11. for (int i = 0;i<admids.length;i++) {
  12. if(user.equals(admids[i].getUser()) && password.equals(admids[i].getPassword())){
  13. //对数组进行循环遍历,比较是否输入的账号密码正确
  14. System.out.println("登录成功");
  15. initStudent();
  16. menu();
  17. }else{
  18. System.out.println("您输入的密码不正确");
  19. System.out.println("请重新输入");
  20. System.out.println("输入“退出”退出程序,按任意键从新输入");
  21. Scanner scanner = new Scanner(System.in);
  22. String over = scanner.next();
  23. if(over.equals("退出")){
  24. break;
  25. }
  26. logon();
  27. }
  28. }
  29. }

4.4初始化学生和管理员 

  1. private static void initAdmid(){//初始化管理员
  2. admids[0] = new Admid("za","123");
  3. admids[1] = new Admid("ls","123");
  4. admids[2] = new Admid("ww","123");
  5. }
  6. /**
  7. * 初始化学生
  8. */
  9. static int num = 0;
  10. private static void initStudent(){
  11. for (int i = 0; i < 5; i++) {
  12. student[i] = new Student("00"+i,"0010"+i,12+i,i<3?"男":"女");
  13. num++;
  14. }
  15. }

4.5显示菜单

  1. public static void menu(){
  2. Scanner scanner = new Scanner(System.in);
  3. System.out.println("1.查看菜单");
  4. System.out.println("2.退出系统");
  5. System.out.println("请输入功能前面的编号进行选择您要办理的业务");
  6. int a = scanner.nextInt();//a是键盘输入的数
  7. if(a == 1){
  8. System.out.println("您已经进入菜单");
  9. System.out.println("1.新增学生");
  10. System.out.println("2.修改学生");
  11. System.out.println("3.删除学生");
  12. System.out.println("4.查询学生");
  13. System.out.println("5.退出系统");
  14. System.out.println("请输入功能前面的编号进行选择您要办理的业务");
  15. int a1 = scanner.nextInt();
  16. if(a1 == 1){
  17. add();
  18. }else if(a1 == 2){
  19. modify();
  20. }else if(a1 == 3){
  21. insert();
  22. }else if(a1 == 4){
  23. System.out.println("1.查询全部学生");
  24. System.out.println("2.查询指定学生");
  25. System.out.println("请输入你要办理业务的序号");
  26. int a2 = scanner.nextInt();
  27. if(a2 == 1){
  28. sclectAll();
  29. }else if(a2 == 2){
  30. sclect();
  31. }
  32. }else if(a1 == 5){
  33. over();
  34. }
  35. }else if(a == 2){
  36. over();
  37. }
  38. }

 4.6查询学生

4.6.1查询所有学生

  1. private static void sclectAll(){
  2. for (int i = 0;i<num;i++){//num是有效值计数器
  3. if(student[i] != null)
  4. System.out.println(student[i]);
  5. }
  6. }

 4.6.2查询指定学生

  1. private static void sclect(){
  2. boolean flag = false;
  3. System.out.println("请输入您要查询学生的学号");
  4. Scanner scanner = new Scanner(System.in);
  5. String an = scanner.next();
  6. for (int i = 0;i<num;i++){
  7. if(an.equals(student[i].getId())){
  8. System.out.println(student[i]);
  9. flag = true;//如果对数组进行遍历都没有查到那么flag就为false
  10. }
  11. if(flag == false){
  12. System.out.println("您输入的学号不存在请重新输入");
  13. sclect();//调用他自身相当于循环使用了
  14. }
  15. }
  16. System.out.println("输入“返回”,返回上一级");
  17. System.out.println("输入任意字,继续查询");
  18. String a2 = scanner.next();
  19. if(a2.equals("返回")){
  20. menu();
  21. }else{
  22. sclect();
  23. }
  24. }

4.7修改学生

  1. /**
  2. * 修改学生信息
  3. */
  4. private static void modify(){
  5. boolean flag = false;
  6. Scanner scanner = new Scanner(System.in);
  7. System.out.println("请输入需要修改学生的学号");
  8. String sid = scanner.next();
  9. for(int i = 0;i<num;i++){
  10. if(sid.equals(student[i].getId())){
  11. System.out.println("请输入修改后学生的学号");
  12. String sId = scanner.next();
  13. System.out.println("请输入修改后学生的姓名");
  14. String sName = scanner.next();
  15. System.out.println("请输入修改后学生的年龄");
  16. int sAge = scanner.nextInt();
  17. System.out.println("请输入修改后学生的性别");
  18. String sSex = scanner.next();
  19. student[i] = new Student(sId,sName,sAge,sSex);
  20. sclectAll();
  21. flag = true;
  22. System.out.println("输入”返回“返回菜单");
  23. System.out.println("输入任意字,继续修改");
  24. String a2 = scanner.next();
  25. if(a2.equals("返回")){
  26. menu();
  27. }else{
  28. modify();
  29. }
  30. }
  31. if(flag==false){
  32. System.out.println("您输入的学号未被录入,请重新输入");
  33. modify();
  34. }
  35. }
  36. if(flag == false){
  37. System.out.println("您输入的学号不存在请重新输入");
  38. modify();
  39. }
  40. }

4.8删除学生

  1. /**
  2. * 删除学生信息
  3. */
  4. private static void insert(){
  5. boolean flag = false;
  6. System.out.println("请输入你要删除学生信息的学号");
  7. Scanner scanner = new Scanner(System.in);
  8. String id = scanner.next();
  9. for(int i = 0;i<num;i++){
  10. if(id.equals(student[i].getId())){
  11. student[i] = null;
  12. System.out.println("删除成功");
  13. sclectAll();
  14. flag = true;
  15. }
  16. if(flag == false){
  17. System.out.println("没有该学生输入“1”请重新输入");
  18. insert();
  19. }
  20. }
  21. System.out.println("输入“返回”,返回菜单");
  22. System.out.println("输入任意字,继续删除");
  23. String a2 = scanner.next();
  24. if(a2.equals("返回")){
  25. menu();
  26. }else{
  27. insert();
  28. }
  29. }

4.9添加学生 

  1. /**
  2. * 添加学生
  3. */
  4. private static void add(){
  5. Scanner scanner = new Scanner(System.in);
  6. System.out.println("请输入新增学生的学号");
  7. String sId = scanner.next();
  8. for(int i = 0;i<num;i++){
  9. if(sId.equals(student[i].getId())){
  10. System.out.println("您输入的学号重复请重新输入");
  11. add();
  12. }
  13. }
  14. System.out.println("请输入新增学生的姓名");
  15. String sName = scanner.next();
  16. System.out.println("请输入新增学生的年龄");
  17. int sAge = scanner.nextInt();
  18. System.out.println("请输入新增学生的性别");
  19. String sSex = scanner.next();
  20. student[num]=new Student(sId,sName,sAge,sSex);
  21. num++;
  22. System.out.println("添加成功");
  23. sclectAll();
  24. System.out.println("输入返回,返回上一级");
  25. System.out.println("输入任意字,继续添加");
  26. String a2 = scanner.next();
  27. if(a2.equals("返回")){
  28. menu();
  29. }else{
  30. add();
  31. }
  32. }

 五、学生管理类的代码如下:

  1. package org.lz.text;
  2. import java.util.Scanner;
  3. public class StudentManger {
  4. static Admid[] admids = new Admid[3];
  5. static Student[] student = new Student[10];
  6. public static void main(String[] args) {
  7. initAdmid();
  8. logon();
  9. }
  10. private static void initAdmid(){//初始化管理员
  11. admids[0] = new Admid("za","123");
  12. admids[1] = new Admid("ls","123");
  13. admids[2] = new Admid("ww","123");
  14. }
  15. /**
  16. * 初始化学生
  17. */
  18. static int num = 0;
  19. private static void initStudent(){
  20. for (int i = 0; i < 5; i++) {
  21. student[i] = new Student("00"+i,"0010"+i,12+i,i<3?"男":"女");
  22. num++;
  23. }
  24. }
  25. /**
  26. * 登录
  27. */
  28. public static void logon(){
  29. Scanner sc = new Scanner(System.in);
  30. System.out.println("===欢迎来到学生管理系统===");
  31. System.out.println("请输入用户名:");
  32. String user = sc.next();
  33. System.out.println("请输入密码");
  34. String password = sc.next();
  35. for (int i = 0;i<admids.length;i++) {
  36. if(user.equals(admids[i].getUser()) && password.equals(admids[i].getPassword())){
  37. //对数组进行循环遍历,比较是否输入的账号密码正确
  38. System.out.println("登录成功");
  39. initStudent();
  40. menu();
  41. }else{
  42. System.out.println("您输入的密码不正确");
  43. System.out.println("请重新输入");
  44. System.out.println("输入“退出”退出程序,按任意键从新输入");
  45. Scanner scanner = new Scanner(System.in);
  46. String over = scanner.next();
  47. if(over.equals("退出")){
  48. break;
  49. }
  50. logon();
  51. }
  52. }
  53. }
  54. /**
  55. * 菜单
  56. */
  57. public static void menu(){
  58. Scanner scanner = new Scanner(System.in);
  59. System.out.println("1.查看菜单");
  60. System.out.println("2.退出系统");
  61. System.out.println("请输入功能前面的编号进行选择您要办理的业务");
  62. int a = scanner.nextInt();//a是键盘输入的数
  63. if(a == 1){
  64. System.out.println("您已经进入菜单");
  65. System.out.println("1.新增学生");
  66. System.out.println("2.修改学生");
  67. System.out.println("3.删除学生");
  68. System.out.println("4.查询学生");
  69. System.out.println("5.退出系统");
  70. System.out.println("请输入功能前面的编号进行选择您要办理的业务");
  71. int a1 = scanner.nextInt();
  72. if(a1 == 1){
  73. add();
  74. }else if(a1 == 2){
  75. modify();
  76. }else if(a1 == 3){
  77. insert();
  78. }else if(a1 == 4){
  79. System.out.println("1.查询全部学生");
  80. System.out.println("2.查询指定学生");
  81. System.out.println("请输入你要办理业务的序号");
  82. int a2 = scanner.nextInt();
  83. if(a2 == 1){
  84. sclectAll();
  85. }else if(a2 == 2){
  86. sclect();
  87. }
  88. }else if(a1 == 5){
  89. over();
  90. }
  91. }else if(a == 2){
  92. over();
  93. }
  94. }
  95. /**
  96. * 添加学生
  97. */
  98. private static void add(){
  99. Scanner scanner = new Scanner(System.in);
  100. System.out.println("请输入新增学生的学号");
  101. String sId = scanner.next();
  102. for(int i = 0;i<num;i++){
  103. if(sId.equals(student[i].getId())){
  104. System.out.println("您输入的学号重复请重新输入");
  105. add();
  106. }
  107. }
  108. System.out.println("请输入新增学生的姓名");
  109. String sName = scanner.next();
  110. System.out.println("请输入新增学生的年龄");
  111. int sAge = scanner.nextInt();
  112. System.out.println("请输入新增学生的性别");
  113. String sSex = scanner.next();
  114. student[num]=new Student(sId,sName,sAge,sSex);
  115. num++;
  116. System.out.println("添加成功");
  117. sclectAll();
  118. System.out.println("输入返回,返回上一级");
  119. System.out.println("输入任意字,继续添加");
  120. String a2 = scanner.next();
  121. if(a2.equals("返回")){
  122. menu();
  123. }else{
  124. add();
  125. }
  126. }
  127. /**
  128. * 修改学生信息
  129. */
  130. private static void modify(){
  131. boolean flag = false;
  132. Scanner scanner = new Scanner(System.in);
  133. System.out.println("请输入需要修改学生的学号");
  134. String sid = scanner.next();
  135. for(int i = 0;i<num;i++){
  136. if(sid.equals(student[i].getId())){
  137. System.out.println("请输入修改后学生的学号");
  138. String sId = scanner.next();
  139. System.out.println("请输入修改后学生的姓名");
  140. String sName = scanner.next();
  141. System.out.println("请输入修改后学生的年龄");
  142. int sAge = scanner.nextInt();
  143. System.out.println("请输入修改后学生的性别");
  144. String sSex = scanner.next();
  145. student[i] = new Student(sId,sName,sAge,sSex);
  146. sclectAll();
  147. flag = true;
  148. System.out.println("输入”返回“返回菜单");
  149. System.out.println("输入任意字,继续修改");
  150. String a2 = scanner.next();
  151. if(a2.equals("返回")){
  152. menu();
  153. }else{
  154. modify();
  155. }
  156. }
  157. if(flag==false){
  158. System.out.println("您输入的学号未被录入,请重新输入");
  159. modify();
  160. }
  161. }
  162. if(flag == false){
  163. System.out.println("您输入的学号不存在请重新输入");
  164. modify();
  165. }
  166. }
  167. /**
  168. * 查询全部学生信息
  169. */
  170. private static void sclectAll(){
  171. for (int i = 0;i<num;i++){
  172. if(student[i] != null)
  173. System.out.println(student[i]);
  174. }
  175. }
  176. /**
  177. * 查询指定学生信息
  178. */
  179. private static void sclect(){
  180. boolean flag = false;
  181. System.out.println("请输入您要查询学生的学号");
  182. Scanner scanner = new Scanner(System.in);
  183. String an = scanner.next();
  184. for (int i = 0;i<num;i++){
  185. if(an.equals(student[i].getId())){
  186. System.out.println(student[i]);
  187. flag = true;
  188. }
  189. if(flag == false){
  190. System.out.println("您输入的学号不存在请重新输入");
  191. sclect();
  192. }
  193. }
  194. System.out.println("输入“返回”,返回上一级");
  195. System.out.println("输入任意字,继续查询");
  196. String a2 = scanner.next();
  197. if(a2.equals("返回")){
  198. menu();
  199. }else{
  200. sclect();
  201. }
  202. }
  203. /**
  204. * 删除学生信息
  205. */
  206. private static void insert(){
  207. boolean flag = false;
  208. System.out.println("请输入你要删除学生信息的学号");
  209. Scanner scanner = new Scanner(System.in);
  210. String id = scanner.next();
  211. for(int i = 0;i<num;i++){
  212. if(id.equals(student[i].getId())){
  213. student[i] = null;
  214. System.out.println("删除成功");
  215. sclectAll();
  216. flag = true;
  217. }
  218. if(flag == false){
  219. System.out.println("没有该学生输入“1”请重新输入");
  220. insert();
  221. }
  222. }
  223. System.out.println("输入“返回”,返回菜单");
  224. System.out.println("输入任意字,继续删除");
  225. String a2 = scanner.next();
  226. if(a2.equals("返回")){
  227. menu();
  228. }else{
  229. insert();
  230. }
  231. }
  232. /**
  233. * 退出系统
  234. */
  235. private static void over(){
  236. System.exit(0);
  237. }
  238. }

 总结:好了这就是简单的学生管理系统的全部代码了,我是用的数组装学生的信息,当然也可以用集合啦

声明:本文内容由网友自发贡献,不代表【wpsshop博客】立场,版权归原作者所有,本站不承担相应法律责任。如您发现有侵权的内容,请联系我们。转载请注明出处:https://www.wpsshop.cn/w/正经夜光杯/article/detail/776731
推荐阅读
相关标签
  

闽ICP备14008679号