Java教程

Java初学者必学(学生管理系统)

本文主要是介绍Java初学者必学(学生管理系统),对大家解决编程问题具有一定的参考价值,需要的程序猿们随着小编来一起学习吧!

Java必学的学生管理系统

Java语言是一种面向对象的语言,它通过提供最基本的方法来完成指定的任务,只需理解一些基本的概念,就可以用它编写出适合于各种情况的应用程序。

本篇主要通过Java类,ArrayList,方法调用等方式让初学者了解Java魅力所在。

Student.java

public class Student {
//学号
private String sid;
//姓名
private String name;
//年龄
private String age;
//居住地
private String address;

public Student() {
    this.sid = sid;
    this.name = name;
    this.age = age;
    this.address = address;
}

public String getSid() {
    return sid;
}

public void setSid(String sid) {
    this.sid = sid;
}

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 getAddress() {
    return address;
}

public void setAddress(String address) {
    this.address = address;
   }
}

StudentManager.java

public class StudentManager {
//主函数
public static void main(String[] args) {
    //创建集合对象,用于储存学生对象
    ArrayList<Student> array = new ArrayList<Student>();
    //用循环完成再次回到主界面
    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("请输入你的选择:");

        //用Scanner实现键盘录入数据
        Scanner sc = new Scanner(System.in);
        String line = sc.nextLine();

        //用switch语句完成操作的选择
        switch (line) {
            case "1":
                //System.out.println("添加学生");
                addStudent(array);
                break;
            case "2":
                //System.out.println("删除学生");
                deleteStudent(array);
                break;
            case "3":
                //System.out.println("修改学生");
                updateStudent(array);
                break;
            case "4":
                //System.out.println("查看所有学生");
                findAllStudent(array);
                break;
            case "5":
                System.out.println("谢谢使用");
                //break;
                System.exit(0);   //JVM退出,Java虚拟机退出
        }
    }
}

//添加学生信息
public static void addStudent(ArrayList<Student> array) {
    //键盘录入学生对象所需要的数据,显示提示信息,提示要输入何种信息
    Scanner sc = new Scanner(System.in);
    //为了让sid在while循环访问到,我们将它定义在外部
    String sid;

    //为了让程序能回到这里,采用循环
    while (true){
        System.out.println("请输入学生学号:");
        sid = sc.nextLine();
        boolean flag = isUsed(array, sid);
        if(flag){
            System.out.println("你输入已被使用,请重新输入");
        }else{
            break;
        }
    }
    System.out.println("请输入学生姓名:");
    String name = sc.nextLine();
    System.out.println("请输入学生年龄:");
    String age = sc.nextLine();
    System.out.println("请输入学生居住地:");
    String address = sc.nextLine();
    //创建学生对象,把键盘录入的数据赋值给学生对象的成员变量
    Student s = new Student();
    s.setSid(sid);
    s.setName(name);
    s.setAge(age);
    s.setAddress(address);
    //将学生对象添加到集合中
    array.add(s);
    //给出添加成功提示
    System.out.println("添加学生成功");
}

//定义一个方法,判断学号是否被占用
public static boolean isUsed(ArrayList<Student> array,String sid){
    //如果学号相同返回true,如果不同返回false
    boolean flag = false;
    for (int i = 0; i < array.size(); i++) {
        Student s = array.get(i);
        if (s.getSid().equals(sid)){
            flag = true;
            break;
        }
    }
    return flag;
}

//查看所有学生信息
public static void findAllStudent(ArrayList<Student> array) {
    if (array.size() == 0) {
        System.out.println("无信息,应该先添加信息");
    } else {
        //显示表头信息
        System.out.println("学号\t\t\t姓名\t\t年龄\t\t居住地");
        System.out.println("---------------------------------");
        //将集合中数据取出按照对应格式显示学生信息,年龄补充“岁”
        for (int i = 0; i < array.size(); i++) {
            Student s = array.get(i);
            System.out.println(s.getSid() + "\t\t\t" + s.getName() + "\t\t" + s.getAge() + "岁\t" + s.getAddress());
        }
    }
}

//删除学生信息
public static void deleteStudent(ArrayList<Student> array) {
    //键盘录入要删除的学生学号,显示提示信息
    Scanner sc = new Scanner(System.in);
    System.out.println("请输入删除的学生学号:");
    String sid = sc.nextLine();
    //如果不存在,重新执行
    //遍历集合对相应的学生对象从集合中删除
    int index = -1;
    for (int i = 0; i < array.size(); i++) {
        Student s = array.get(i);
        if (s.getSid().equals(sid)) {
            index = i;
            break;
        }
    }
    if(index == -1){
        System.out.println("输入的学生信息不存在,请重新输入");
    }else{
        array.remove(index);
        //给出删除成功提示
        System.out.println("删除信息成功");
    }
}

//修改学生信息
public static void updateStudent(ArrayList<Student> array){
    //键盘录入要更新的学生信息,显示提示信息
    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 address = sc.nextLine();
    //创建学生对象
    Student s = new Student();
    s.setSid(sid);
    s.setName(name);
    s.setAge(age);
    s.setAddress(address);
    //遍历集合修改对应的学生信息
    for (int i = 0; i < array.size(); i++) {
        Student student = array.get(i);
        if (student.getSid().equals(sid)){
            array.set(i,s);
            break;
        }
    }
    //给出修改提示信息
    System.out.println("修改学生信息成功");
	}
}
这篇关于Java初学者必学(学生管理系统)的文章就介绍到这儿,希望我们推荐的文章对大家有所帮助,也希望大家多多支持为之网!