用JavaSE知识点完成登入注册界面

来源:互联网 发布:男博导女博士知乎 编辑:程序博客网 时间:2024/06/01 08:52

package cn.itcast.day11.demo02UserRegistLogin;

import java.io.BufferedReader;
import java.io.FileNotFoundException;
import java.io.FileReader;
import java.io.IOException;
import java.util.ArrayList;
import java.util.Scanner;
/**
*
* @author jack
*
*/
/*用户注册和登录案例的分析:
1.定义一个标准的User类(用户名成和密码)
2.系统有多个用户进行注册和登录,需要保存其信息,所以需要定义一个集合ArrayList,泛型User
3.显示欢迎界面
4.创建键盘录入对象
5.获取用户输入的数据
6.根据用户的输入数据,进行判断(if和switch都可以),执行相关的操作
(1)如果输入的是1:执行注册的功能
(2)如果输入的是2:执行登录的功能
(3)如果输入的是3:执行退出的功能
(4)其他数字,输入错误,请重试。*/
public class UserRegistLogin {

public static void main(String[] args) {    //定义一个方法UserRegistLogin(),进入用户注册和登录界面    userRegistLogin();}public static void userRegistLogin(){    //定义一个储存用户信息的集合    ArrayList<User> list = new ArrayList<>();           while(true){            //定义一个打印欢迎界面的方法(循环从这开始)            printMenu();            //定义一个方法,获取用户键盘录入的内容            int getNum = getScanner();            switch(getNum){                case 1:                                 //定义注册功能                    regist(list);                    //因为还没学连接数据库,所以用户每次都注册成功                    System.out.println("注册成功");                    break;                case 2:                    //System.out.println("登入成功");                    //定义一个有登入login()功能的方法,传入一个储存用户信息的集合                    login(list);                    break;                case 3:                    System.out.println("感谢您的本次使用,欢迎下次光临!");                    //0表示的是正常退出,非0表示的是非正常退出                    System.exit(0);                    break;                  default:{                    System.out.println("尊敬的用户请按提示输入内容,请重新输入!");                }            }    }   }/** * 定义一个有登入功能的方法login()并判断用户是否登入成功,传入一个储存用户信息的集合 * @param list 传入一个集合,里面储存用户信息 */private static void login(ArrayList<User> list) {    Scanner sc = new Scanner(System.in);    System.out.print("请输入用户名(不区分大小写):");    String userName = sc.nextLine();    System.out.print("请输入密码(区分大小写):");    String userPassword = sc.nextLine();    for (int i = 0; i < list.size(); i++) {        if(userName.equalsIgnoreCase( list.get(i).getUserName()) && userPassword.equals(list.get(i).getUserPassword())){            System.out.println("登录成功!欢迎使用!");            return;//结束方法的运行        }    }    System.out.println("用户名或者密码错误,请重试!");}//定义一个注册功能的方法并向集合中添加内容,传入一个集合,返回voidprivate static void regist(ArrayList<User> list) {    Scanner sc = new Scanner(System.in);            System.out.print("请输入用户名:");    String userName = sc.nextLine();    System.out.print("请输入用户密码:");    String userPassword = sc.nextLine();    User user = new User(userName, userPassword);    list.add(user);}//定义一个方法,返回用户键盘录入的内容,返回值为int型private static int getScanner(){    Scanner sc = new Scanner(System.in);    int num = 3;    try {        num = sc.nextInt();    } catch (Exception e) {        // TODO Auto-generated catch block        System.out.println("输入有误,重新输入");        userRegistLogin();    }    return num;}//定义一个方法,打印欢迎界面public static void printMenu() {    System.out.println("========欢迎使用本系统========");    System.out.println("1 - 注册");    System.out.println("2 - 登录");    System.out.println("3 - 退出");    System.out.print("请选择:");       }

}
程序逻辑原理图

原创粉丝点击