首先先建立一个学生类
//建立学生类
public class Student1 {
private String name;
private String age;
private String id;
private String adress; //姓名、年龄、学号、籍贯
public Student1() {
}
public Student1(String name, String age, String id, String adress) {
this.name = name; //成员变量
this.age = age;
this.id = id;
this.adress = adress;
}
public String getName() { //调用get和set方法
return name;
}
public void setName(String name) {
this.name = name;
}
public String getAge() {
return age;
}
public void setAge(String age) {
this.age = age;
}
public String getId() {
return id;
}
public void setId(String id) {
this.id = id;
}
public String getAdress() {
return adress;
}
public void setAdress(String adress) {
this.adress = adress;
}
}
进行增删改查代码写作
import java.util.ArrayList;
import java.util.Scanner;
public class StudentManage {
public static void main(String[] args) {
ArrayList<Student1> student= new ArrayList<Student1>(); //声明变量
Scanner sc = new Scanner(System.in); //获取控制台的输入
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("| 6:退出管理系统 |");
System.out.println("--------------------------------");
System.out.println("请选择要进行的业务:");
int n = sc.nextInt(); //读取数值
switch (n) { //使用switch语句判断数字
case 1:
System.out.println("增加学生信息");
adds(student);
break;
case 2:
removes(student);
break;
case 3:
setOne(student);
break;
case 4:
printOne(student);
break;
case 5:
printAll(student);
break;
case 6:
System.exit(0);
break;
default:
System.out.println("你的选择有误,请选择现有的业务");
}
}
}
//增加学生信息方法
public static void adds(ArrayList<Student1> student){
Scanner sc = new Scanner(System.in); //获取控制台的输入
System.out.println("请输入学生姓名:");
String name = sc.nextLine();
System.out.println("请输入学生年龄:");
String age =sc.nextLine();
System.out.println("请输入学生学号:");
String id =sc.nextLine();
System.out.println("请输入学生地址:");
String adress =sc.nextLine();
Student1 students = new Student1(); //开辟空间
students.setName(name);
students.setAge(age);
students.setId(id);
students.setAdress(adress); //将输入的值赋给学生对象的成员变量
student.add(students); //将学生对象添加到集合中
System.out.println("添加学生信息成功");
}
//删除学生信息
public static void removes(ArrayList<Student1> student){
Scanner sc = new Scanner(System.in); //获取控制台的输入
System.out.println("请输入要删除学生的学号:");
String id = sc.nextLine(); //循环遍历
for(int i = 0;i < student.size();i++){
Student1 s = student.get(i); //将字符串与指定对象进行比较,返回是否相同;
if(s.getId().equals(id)){
System.out.println("删除后无法恢复,时候要继续删除");
System.out.print("1:是\n2:否\n");
int a = sc.nextInt(); //读取数值
if(a==1) {
student.remove(i);
break;
}else{
break;
}
}
}
}
//修改学生信息
public static void setOne(ArrayList<Student1> student){
Scanner sc = new Scanner(System.in); //获取控制台的输入
System.out.println("请输入所要修改学生的学号");
String sid = sc.nextLine();
System.out.println("请输入新的学生姓名:");
String name = sc.nextLine();
System.out.println("请输入新的学生年龄:");
String age =sc.nextLine();
System.out.println("请输入新的学生学号:");
String id =sc.nextLine();
System.out.println("请输入新的学生地址:");
String adress =sc.nextLine(); //读取数值
Student1 s = new Student1();
s.setName(name);
s.setAge(age);
s.setId(id);
s.setAdress(adress); //输入要修改的信息并把它赋值给新的学生类对象
for(int i = 0;i < student.size();i++){
Student1 a = student.get(i);
if(a.getId().equals(sid)){
student.set(i,s);//通过equals()方法找到对应学生类对象再用set(int index,element)方法将旧的学生类对象修改为新的
break;
}
System.out.println("修改学生信息成功");
}
}
//查找学生信息
public static void printOne(ArrayList<Student1> student){
Scanner sc = new Scanner(System.in); //获取控制台的输入
System.out.println("请选择所要查找学生的学号");
String id = sc.nextLine();
for(int i = 0; i < student.size();i++){
Student1 s = student.get(i); //下标读取查找信息
if(s.getId().equals(id)){
System.out.println("学生姓名\t年龄\t学号\t地址\t");
System.out.println(s.getName()+"\t"+s.getAge()+"岁\t"+s.getId()+"\t"+s.getAdress()+"\t");
}
}
}
//查找所有学生信息
public static void printAll(ArrayList<Student1> student){
Scanner sc = new Scanner(System.in); //获取控制台的输入
if(student.size()==0){ //先做判断集合中是否有信息
System.out.println("无学生信息,请先添加学生信息");
System.out.println("请选择是否添加学生信息:");
System.out.println("1:添加学生信息\n2:退出\n");
int n = sc.nextInt();
switch (n){
case 1:
adds(student);
break;
case 2:
System.exit(0);
break;
default:
System.out.println("你的选择有误,请选择已存在的业务");
}
}else
{ //遍历集合
System.out.println("学生姓名\t年龄\t学号\t地址\t");
for(int i = 0;i < student.size();i++) {
Student1 s = student.get(i);
System.out.println(s.getName() + "\t" + s.getAge() + "岁\t" + s.getId() + "\t" + s.getAdress() + "\t");
}
}
}
}
最后输出的结果大概如下