新人一枚,请各位大佬多多指正提意见

任务

• 模拟注册登录幸运抽奖全过程

l

主要功能

• 注册

• 登录

l 阶段1:练习——实现菜单的输出显示

• 需求说明

•输出菜单

•选择菜单编号,输出菜单信息

•如果编号选择错误,输出“您的输入有误!

l 阶段2:练习——实现循环执行功能

需求说明

系统询问用户是否继续 如果用户选择继续,则可以继 续选择菜单,否则程序结束, 退出系统

l 阶段3:练习——实现注册功能

需求说明 输入用户名和密码,系统产生 4位随机数作为卡号。 注册成功,显示注册信息并修 改注册标识为true

l 阶段4:练习——实现登录功能

需求说明 输入注册时的用户名和密码, 登录成功,系统提示欢迎信息 如果用户名和密码输入错误, 提示用户继续输入,最多有3 次输入机会


l 阶段5:练习——实现幸运抽奖功能

需求说明 登录成功后,用户选择幸运抽 奖菜单,进入幸运抽奖功能输入会员卡号,系统生成54 位随机数作为幸运数字 如果会员卡号是其中之一,则 成为本日幸运会员;否则不是 幸运会员

package com.array1.cn;

import java.util.Arrays;
import java.util.Scanner;

public class Choujiang {
    public static String name;
    public static String pw;
    public static int lucknum;
    public static boolean loginsuccess = false;
    public static boolean sign = false;

    public static void main(String[] args) {
        Scanner scanner = new Scanner(System.in);
        while (true) {
            System.out.println("欢迎来到抽奖系统");
            System.out.println("1.注册");
            System.out.println("2.登录");
            System.out.println("3.抽奖");
            System.out.println("0.退出");
            int chioce = scanner.nextInt();
            switch (chioce) {
                case 1:
                    if (sign == true) {
                        System.out.println("您已注册,是否重新注册");
                    }
                    char i1 = chioce();
                    if (i1 == 'y') {
                        signUp(scanner);

                        break;
                    } else {
                        System.out.println("请选择其他功能");
                        break;
                    }
                case 2:
                    if (loginsuccess == true) {
                        System.out.println("您已登录,是否重新登陆");
                    }
                    if (sign == false) {
                        System.out.println("请先进行注册操作");
                        break;
                    }
                    char i2 = chioce();
                    if (i2 == 'y') {
                        login(scanner);
                        break;
                    } else {
                        System.out.println("请选择其他功能");
                        break;
                    }
                case 3:
                    if (loginsuccess == false) {
                        System.out.println("请先进行登录操作");
                        break;
                    }
                    char i3 = chioce();
                    if (i3 == 'y') {
                        fortune();
                        break;
                    } else {
                        System.out.println("请选择其他功能");
                        break;
                    }
                case 0:
                    System.out.println("谢谢您的使用");
                    return;
                default:
                    System.out.println("请重新选择您所需要的功能");
                    break;
            }
        }
    }

    public static char chioce() {
        Scanner scanner = new Scanner(System.in);
        System.out.println("按y继续,其他退出");
        char p1 = scanner.next().charAt(0);
        return p1;
    }

    public static void signUp(Scanner scanner) {
        System.out.println("请输入您的用户名:");
        name = scanner.next();
        System.out.println("请输入您的密码");
        pw = scanner.next();
        lucknum = (int) (1000 + Math.random() * 9000);
        System.out.println("用户名\t密码\t幸运数字");
        System.out.println(name + "\t" + pw + "\t" + lucknum);
        sign = true;
    }

    public static void login(Scanner scanner) {
        int count = 2;
        while (true) {
            System.out.println("请输入您的用户名:");
            String loginname = scanner.next();
            System.out.println("请输入您的密码");
            String lgoginpw = scanner.next();
            if (!loginname.equals(name) || !lgoginpw.equals(pw)) {
                if (count == 0) {
                    System.out.println("尝试机会已用尽,请重新登陆");
                    break;
                }
                System.out.println("请重新登陆,还有" + count + "次机会");
                count--;
            } else {
                System.out.println("登录成功,请抽奖");
                loginsuccess = true;
                break;
            }
        }
    }

    public static void fortune() {
        int[] array = new int[5];
        for (int i = 0; i < array.length; i++) {
            array[i] = (int) (1000 + Math.random() * 9000);
        }
//        System.out.println(Arrays.toString(array));
//        System.out.println(lucknum);
        for (int i = 0; i < array.length; i++) {
            if (array[i] == lucknum) {
                System.out.println("恭喜您中奖了");
                return;
            }
        }
        System.out.println("很遗憾您没有中奖,请重新尝试");
    }
}