Java学生管理系统

Java学生管理系统

简单介绍

  1. 变量与数组:代码中使用了基本数据类型变量(如int)和引用类型变量(如String),以及对应的数组来存储数据。

  2. 循环:代码中大量使用了while循环和for循环来执行重复的操作。

  3. 条件语句ifelse if被用于在不同条件下执行不同的操作。

  4. 方法main方法是程序的入口点,所有的操作都在这个方法中执行。

  5. Longxi类包含了所有的代码。在Java中,所有的代码都需要包含在类中。

  6. 输入/输出操作:使用System.out.println方法进行输出,使用Scanner类进行输入。

  7. 字符串操作:使用了String.equals方法比较字符串,使用equalsIgnoreCase方法比较字符串忽略大小写。

  8. 数组操作:使用了System.arraycopy方法复制数组。

  9. 错误处理:对用户输入进行验证,如果用户输入错误,给出相应提示。

  10. 类型转换:例如,用户输入的字符串被转换为整数。

 

代码

import java.util.Scanner;
public class Longxi {
    // 存储用户名和密码
    static String name[] = new String[3];
    static String passwd[] = new String[3];

    // 任务 1:增加一个数组用来存储用户的年龄
    static int ages[] = new int[3];

    static int index = 0;
    static int chance = 3;//定义此变量用于限制用户输入密码次数在三次以内
    public static void main(String[] args) {
        name[0] = "longxi";
        passwd[0] = "123456";
        ages[0] = 18; // 默认年龄

        while (true) {
            System.out.println("--------------------欢迎使用贵州工商职业学院学生管理系统 --------------------");
            System.out.println("--------------------请选择 --------------------");
            System.out.println(" 1.登录学生管理系统");
            System.out.println(" 2.注册功能 ");
            System.out.println(" 3.查看所有用户");
            System.out.println(" 0.退出 ");
            Scanner scan = new Scanner(System.in);
            System.out.println("请选中功能:");
            String str = scan.next();
            if (str.equals("1")) {

                while (true){
                    Scanner scan1 = new Scanner(System.in);
                    System.out.println("请输入用户名:");
                    String str1 = scan1.next();
                    Scanner scan2 = new Scanner(System.in);
                    System.out.println("请输入密码:");
                    String str2 = scan2.next();

                    boolean isHave = false;
                    for (int i1 = 0; i1 < passwd.length; i1++) {
                        if (str1.equals(name[i1]) && str2.equals(passwd[i1])) {
                            isHave = true;
                        }
                    }

                    if (isHave == true) {
                        System.out.println("登录成功!");
                        chance = 3; //重置试错机会
                        break;
                    }else {
                        chance--;
                        if(chance == 0){
                            System.out.println("您的账号尝试超过 3 次,已被锁定,请联系管理员!");
                            break;
                        }else{
                            System.out.println("登录失败,您还有 " + chance + " 次机会!是否继续登录?继续请输入 y,输入其他字符则退出");
                            String decision = scan.next();
                            if(!decision.equalsIgnoreCase("y")){
                                break;
                            }
                        }
                    }
                }
            } else if (str.equals("2")) {

                Scanner scan1 = new Scanner(System.in);
                System.out.println("请输入用户名:");
                String str1 = scan1.next();
                Scanner scan2 = new Scanner(System.in);
                System.out.println("请输入密码:");
                String str2 = scan2.next();

// 任务 1:提示用户输入年龄
                System.out.println("请输入年龄:");
                int age = scan1.nextInt();

                boolean flag = true;

                for (int i = 0; i < name.length; i++) {
                    if(name[i] != null && name[i].equals(str1)) {
                        System.out.println("用户已存在!");
                        flag = false;
                        break;
                    }
                }

                if (flag == true) {
                    index++;
                    if (index < name.length) {
                        name[index] = str1;
                        passwd[index] = str2;
                        ages[index] = age; // 添加数据到年龄数组
                        System.out.println("注册成功!");
                    } else {
                        String newarray1[] = new String[name.length + 3];
                        String newarray2[] = new String[name.length + 3];
                        int newarray3[] = new int[ages.length + 3]; // 增加年龄数组长度
                        System.arraycopy(name, 0, newarray1, 0, name.length);
                        System.arraycopy(passwd, 0, newarray2, 0, passwd.length);
                        System.arraycopy(ages, 0, newarray3, 0, ages.length); // 复制年龄数组数据
                        name = newarray1;
                        passwd = newarray2;
                        ages = newarray3; // 年龄数组长度已增加
                        for (int i = 0; i < name.length; i++) {
                            if (name[i] != null) {
                                System.out.println("用户名:" + name[i] + "," + "密码:" + passwd[i]+ "," + "年龄:" + ages[i] + "\n");
                            }
                        }
                        name[index] = str1;
                        passwd[index] = str2;
                        ages[index] = age; // 增加年龄数据
                        System.out.println("注册成功!");
                    }
                }
            } else if (str.equals("3")) {
                for (int i = 0; i < name.length; i++) {
                    if (name[i] != null) {
                        System.out.println("用户名:" + name[i] + "," + "密码:" + passwd[i]+ "," + "年龄:" + ages[i] + "\n");
                    }
                }
            } else if (str.equals("0")) {
                break;//退出就是结束运行
            } else {
                System.out.println("请输入正确的选项序号!");
            }
        }
    }
}

 

运行截图

图片

 

 

© 版权声明
THE END
喜欢就支持一下吧
点赞9赞赏 分享
评论 抢沙发

请登录后发表评论

    暂无评论内容