文章目录
- 前言
- 学生操作系统
前言
学习Java已经到了这个地步,我们可以尝试写一个综合篇的题目来检验我们的学习成果
学生操作系统
先定义一个类方法
package SysStudent;
public class Student {
private String name;
private String id;
private int age;
private String addres;
public Student() {
}
public Student(String name, String id, int age, String addres) {
this.name = name;
this.id = id;
this.age = age;
this.addres = addres;
}
public String getName() {
return name;
}
public void setName(String name) {
this.name = name;
}
public String getId() {
return id;
}
public void setId(String id) {
this.id = id;
}
public int getAge() {
return age;
}
public void setAge(int age) {
this.age = age;
}
public String getAddres() {
return addres;
}
public void setAddres(String addres) {
this.addres = addres;
}
}
接下来开始主代码的学习
package SysStudent;
import java.sql.SQLOutput;
import java.util.ArrayList;
import java.util.Scanner;
public class test {
public static void main(String[] args) {
//集合必须定义在循环的的外面,且集合要定义在main方法中
ArrayList<Student> list = new ArrayList<>();
Scanner sc = new Scanner(System.in);
a:
while (true) {
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("请输入您的选择");
//在循环前面加一个名字如a可以通过
//格式 名字:while
//break a跳出整个while循环
String chose = sc.next();
switch (chose) {//break跳出的是switch语句
case "1":
//增加学生
addStudent(list);
break;
case "2":
//删除学生
deleteStudent(list);
break;
case "3":
//修改学生
chanegStudent(list);
break;
case "4":
//查询学生
findStudent(list);
break;
case "5":
System.out.println("5:退出");
break a;
//System.exit(0); 停止虚拟机运行
default:
System.out.println("没有这个选项");
}
}
}
private static void findStudent(ArrayList<Student> list) {
System.out.println("查询学生信息");
if (list.size() == 0) {
System.out.println("未找到学生信息");
return;//提示结束后结束方法
}
//打印表格
System.out.println("id\t年龄\t姓名\t住址");
for (int i = 0; i < list.size(); i++) {
Student stu = list.get(i);
//输出学生的信息
System.out.println(stu.getId() + "\t" + stu.getAge() + "\t" + stu.getName() + "\t" + stu.getAddres());
}
}
private static void chanegStudent(ArrayList<Student> list) {
//从穿过来的集合修改
//id存在则录入其他信息
//id不存在则提示不存在,并且回到初始页面
//输入id
Scanner sc=new Scanner(System.in);
System.out.println("请输入要修改的id");
String id=sc.next();
//判断当前id是否存在 (getIndex)
//返回当前id的索引
int index=getIndex(list,id);
//判断
if(index==-1){
//id不存在,无法修改
System.out.println("当前输入的id:"+id+"不存在");
return;
//方法结束
}
Student stu=list.get(index);
System.out.println("请输入当前要修改的学生姓名");
String newName=sc.next();
stu.setName(newName);
System.out.println("请输入当前要修改学生的年龄");
int newAge= sc.nextInt();
stu.setAge(newAge);
System.out.println("请输入当前要修改学生的住址");
String newAddress = sc.next();
stu.setAddres(newAddress);
System.out.println("学生信息修改成功");
}
private static void deleteStudent(ArrayList<Student> list) {
//id存在则删除
//id不存在则返回菜单
//键盘输入id
Scanner sc=new Scanner(System.in);
System.out.println("请输入要删除的id");
String id = sc.next();
//查询出id在集合中的索引
int index = getIndex(list,id);
//判断
if(index==-1){
System.out.println("要删除的id:"+id+"不存在");
return;
}
list.remove(index);
System.out.println("删除成功");
}
//添加学生信息
private static void addStudent(ArrayList<Student> list) {
Scanner sc = new Scanner(System.in);
Student s = new Student();
//创建学生对象
while (true) {
System.out.println("请输入学生id");
String id = sc.next();
int index = getIndex(list,id);
if (index >= 0) {
//当前id存在
System.out.println("当前id:" + id + "已存在,请重新输入");
} else {
//当前id不存在
System.out.println("当前id:" + id + "不存在,可以用");
s.setId(id);
break;
}
}
System.out.println("请输入学生年龄");
int age = sc.nextInt();
s.setAge(age);
System.out.println("请输入学生姓名");
String name = sc.next();
s.setName(name);
System.out.println("请输入学生地址");
String address = sc.next();
s.setAddres(address);
//创建学生对象
list.add(s);
//提示
System.out.println("学生信息添加成功");
}
//查询输入的id在集合中的索引
public static int getIndex(ArrayList<Student> list,String id) {
for (int i = 0; i < list.size(); i++) {
Student stu = list.get(i);
String uid = stu.getId();
//拿着集合中的id和输入的id进行比较
if (uid.equals(id)) {
return i;
}
}
return -1;
//循环结束后如果不存在则返回-1
}
}
让我们来看看运行结果
"C:\JetBrains\IntelliJ IDEA 2019.2.4\jbr\bin\java.exe" "-javaagent:C:\JetBrains\IntelliJ IDEA 2019.2.4\lib\idea_rt.jar=60499:C:\JetBrains\IntelliJ IDEA 2019.2.4\bin" -Dfile.encoding=UTF-8 -classpath C:\IdeaProjects\heima169work\out\production\day13 SysStudent.test
欢迎来到学生管理系统
1:添加学生
2:删除学生
3:修改学生
4:查询学生
5:退出
请输入您的选择
接下来我们就可以进行自己的操作啦
这个代码写了我一下午加一晚上,希望大家稍微支持一下
感谢感谢,祝各位天天开心,过的愉快