《大数据和人工智能交流》头条号向广大初学者新增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());
}
}
}
}
}