• 要点:
  1. 类的创建与赋值
  2. ArrayList保存类的内容
  3. 遍历/查找/删除类中的数据
  • 类的创建
package CAK1;

public class Student {
    private String name;
    private String age;
    private String sno;

    public Student(String name, String age, String sno) {
        this.name = name;
        this.age = age;
        this.sno = sno;
    }

    public String getName() {
        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 getSno() {
        return sno;
    }

    public void setSno(String sno) {
        this.sno = sno;
    }
}
  • 主函数
package CAK1;

import com.sun.xml.internal.messaging.saaj.soap.FastInfosetDataContentHandler;

import java.sql.Struct;
import java.util.ArrayList;
import java.util.Scanner;
public class StudentDemo {
    public static void main(String[] args) {
        ArrayList<Student> array=new ArrayList<Student>();
        boolean ct = true;
        while(ct){
            zhuye();
            Scanner sc = new Scanner(System.in);
            String line = sc.nextLine();
            switch (line) {
                case "1" :
                    System.out.println("1.添加学生");
                    addStudent(array);
                    break;
                case "2":
                    System.out.println("2.删除学生");
                    delStudent(array);
                    break;
                case "3":
                    System.out.println("3.修改学生");
                    fixStudent(array);
                    break;
                case "4":
                    System.out.println("4.查看学生列表");
                    findStudent(array);
                    break;
                case "5":
                    System.out.println("谢谢使用"); ct = false; break;//System.exit( 0 );//break;
            }
        }
    }
    public static void zhuye(){
        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("请输入选择序号:");
    }
    public static void addStudent(ArrayList<Student> array){
        Scanner sc = new Scanner(System.in);
        System.out.println("输入学生姓名");
        String name = sc.nextLine();
        System.out.println("输入学生年龄");
        String age = sc.nextLine();
        System.out.println("输入学生学号");
        String sno = sc.nextLine();
        Student s = new Student(name,age,sno);
        array.add(s);
        System.out.println("添加成功");
    }
    public static void delStudent(ArrayList<Student> array){
        boolean nostu = false;
        Scanner sc = new Scanner(System.in);
        System.out.println("输入删除的学生学号");
        String sno = sc.nextLine();
        for(int i=0 ;i< array.size();i++){
            Student s = array.get(i);
            if(s.getSno().equals(sno)){//字符串比较用equals
                array.remove(i);
                if(i == (array.size()-1)){
                    nostu = true;
                }
                break;
            }
        }
        if(nostu){
            System.out.println("查无此号");
        }
        else{
            System.out.println("删除成功");
        }
    }
    public static void fixStudent(ArrayList<Student> array){
        boolean nostu = true;
        System.out.println("请输入该生的学号");
        Scanner sc = new Scanner(System.in);
        String sno = sc.nextLine();
        for(int i=0;i< array.size();i++){
            Student s =array.get(i);
            if(s.getSno().equals(sno)){
                nostu = false;
                array.remove(i);
                System.out.println("输入新姓名");
                String name = sc.nextLine();
                System.out.println("输入年龄");
                String age = sc.nextLine();
                Student s2 = new Student(name,age,sno);
                array.add(s2);
                System.out.println("修改成功");
            }
        }
        if(nostu){
            System.out.println("查无此号");
        }
    }
    public static void findStudent(ArrayList<Student> array){
        if(array.size() == 0){
            System.out.println("无信息");
        }
        else
        {
            System.out.println("姓名   年龄   学号");
            for(int i = 0;i<array.size();i++){
                Student s = array.get(i);
                System.out.println(s.getName() +"\t" + s.getAge() + "岁\t" + s.getSno());
            }
        }
    }
}

 

Posted on 2022-05-23 10:46  LutixiaGit  阅读(105)  评论(0)    收藏  举报