《大数据和人工智能交流》头条号向广大初学者新增C 、Java 、Python 、Scala、javascript 等目前流行的计算机、大数据编程语言,希望大家以后关注本头条号更多的内容。

一、系统需求:

1、使用控制台作为人机交互输入数据

2、使用集合List作为数据存储来模拟数据库

3、实现对学生管理数据的如下操作:

(1)新增学生信息

(2)按照学号删除学生信息

(3)按照学号修改学生信息

(4)按照学号查询学生信息

二、实现步骤:

1、建立个学生的实体类,封装学生的数据,来模拟学生的记录集;另外把学生字段封装在类里面可以数据字段的重用;还有好处将字段修饰成private起到字段信息的保密作用,对外界只是提供个方法(get/set),因为方法对数据是可控的,根据需求可以外界进行限制,比如要求其输入帐号和密码,才允许进入该方法体。

public class Student {
 private String sid;//学生编号
 private String sname;//姓名
 private int age;//年龄
 public Student(){}
public Student(String sid, String sname, int age) {
super();
this.sid = sid;
this.sname = sname;
this.age = age;
}
public String getSid() {
return sid;
}
public void setSid(String sid) {
this.sid = sid;
}
public String getSname() {
return sname;
}
public void setSname(String sname) {
this.sname = sname;
}
public int getAge() {
return age;
}
public void setAge(int age) {
this.age = age;
} 
}

2、设计人机交互

(1)设计菜单并设计新增功能

public class StudentService {
static Scanner input=new Scanner(System.in);
public static List studentList=new ArrayList();
/*
 * 人机交互的菜单
 */
 public static void menu()
 {
 while(true)
 {
 System.out.println("1、新增学员");
 System.out.println("2、删除学员");
 System.out.println("3、编辑学员");
 System.out.println("4、查询学员");
 System.out.println("5、退出");
 System.out.println("请输入相应的数字按键:");
 int key=input.nextInt();
 if(key==5)
 {
 break;
 }
 if(key==1)//新增
 {
 while(true)
 {
 Student s=new Student();
 System.out.println("请输入学员编号【按11退出】:"); 
 String sid=input.next();
 if("11".equals(sid))
 {
 break;
 }
 s.setSid(sid);
 System.out.println("请输入学员姓名【按11退出】:");
 String sname=input.next();
 s.setSname(sname) ;
 System.out.println("请输入学员编年龄【按11退出】:");
 int age=input.nextInt();
 s.setAge(age);
 studentList.add(s);
 }
 }
 }
 }
}

(2)按照学号删除学生

public class StudentService {
static Scanner input=new Scanner(System.in);
public static List studentList=new ArrayList();
/*
 * 人机交互的菜单
 */
 public static void menu()
 {
 while(true)
 {
 System.out.println("1、新增学员");
 System.out.println("2、删除学员");
 System.out.println("3、编辑学员");
 System.out.println("4、查询学员");
 System.out.println("5、退出");
 System.out.println("请输入相应的数字按键:");
 int key=input.nextInt();
 if(key==5)
 {
 break;
 }
 if(key==1)//新增
 {
 while(true)
 {
 Student s=new Student();
 System.out.println("请输入学员编号【按11退出】:"); 
 String sid=input.next();
 if("11".equals(sid))
 {
 break;
 }
 s.setSid(sid);
 System.out.println("请输入学员姓名【按11退出】:");
 String sname=input.next();
 s.setSname(sname) ;
 System.out.println("请输入学员编年龄【按11退出】:");
 int age=input.nextInt();
 s.setAge(age);
 studentList.add(s);
 }
 System.out.println("新增学员后学生的信息为:");
 System.out.println("学号姓名年龄");
 for(Student s:studentList)
 {
 System.out.println(s.getSid()+""+s.getSname()+""+s.getAge());
 } 
 }
 if(key==2)
 {
 System.out.println("请输入需要删除的学员编号:");
 String sid=input.next();
 for(Student s:studentList)
 {
 if(sid.equals(s.getSid()))
 {
 studentList.remove(s);
 break;
 }
 }
 System.out.println("删除后,剩余的学生信息:");
 System.out.println("学号姓名年龄");
 for(Student s:studentList)
 {
 System.out.println(s.getSid()+""+s.getSname()+""+s.getAge());
 }
 }
 }
 }
}

(3)编辑学生信息

package com;
import java.util.*;
public class StudentService {
static Scanner input=new Scanner(System.in);
public static List studentList=new ArrayList();
/*
 * 人机交互的菜单
 */
 public static void menu()
 {
 while(true)
 {
 System.out.println("1、新增学员");
 System.out.println("2、删除学员");
 System.out.println("3、编辑学员");
 System.out.println("4、查询学员");
 System.out.println("5、退出");
 System.out.println("请输入相应的数字按键:");
 int key=input.nextInt();
 if(key==5)
 {
 break;
 }
 if(key==1)//新增
 {
 while(true)
 {
 Student s=new Student();
 System.out.println("请输入学员编号【按11退出】:"); 
 String sid=input.next();
 if("11".equals(sid))
 {
 break;
 }
 s.setSid(sid);
 System.out.println("请输入学员姓名【按11退出】:");
 String sname=input.next();
 s.setSname(sname) ;
 System.out.println("请输入学员编年龄【按11退出】:");
 int age=input.nextInt();
 s.setAge(age);
 studentList.add(s);
 }
 System.out.println("新增学员后学生的信息为:");
 System.out.println("学号姓名年龄");
 for(Student s:studentList)
 {
 System.out.println(s.getSid()+""+s.getSname()+""+s.getAge());
 } 
 }
 if(key==2)
 {
 System.out.println("请输入需要删除的学员编号:");
 String sid=input.next();
 for(Student s:studentList)
 {
 if(sid.equals(s.getSid()))
 {
 studentList.remove(s);
 break;
 }
 }
 System.out.println("删除后,剩余的学生信息:");
 System.out.println("学号姓名年龄");
 for(Student s:studentList)
 {
 System.out.println(s.getSid()+""+s.getSname()+""+s.getAge());
 }
 }
 if(key==3)
 {
 System.out.println("请输入需要删除的学员编号:");
 String sid=input.next();
 for(Student s:studentList)
 {
 if(sid.equals(s.getSid()))//按照学号找到当前的学生
 {
 System.out.println("请输入需要修改的姓名:");
 String sname=input.next();
 s.setSname(sname);
 System.out.println("请输入需要修改的年龄:");
 int age=input.nextInt();
 s.setAge(age);
 }
 }
 System.out.println("修改后学生的信息:");
 System.out.println("学号姓名年龄");
 for(Student s:studentList)
 {
 System.out.println(s.getSid()+""+s.getSname()+""+s.getAge());
 }
 }
 }
 }
}