package unit.wdit.test;
import java.io.BufferedReader;
import java.sql.SQLOutput;
import java.util.*;
/**
-
练习:做一个注册与登录系统
*/
public class Test {
static Scanner sc = new Scanner(System.in);
//创建一个集合用来存放用户名与密码
static HashMap<String,String> tree = new HashMap<>();
public static void main(String[] args) {tree.put("赵童","181536"); tree.put("屈波","123456"); tree.put("唐康","200002"); boolean flag = true; //System.out.println(tree); do { System.out.println("******************************************"); System.out.println("欢迎进入赵某人的注册与登录系统"); System.out.println("请按提示完成操作"); System.out.println("1.注册功能"); System.out.println("2.登录功能"); System.out.println("3.查看注册"); System.out.println("4.退出系统"); //提示用户输入 System.out.println("请选择(1-3)"); System.out.println("******************************************"); int num = sc.nextInt(); int x = 1; out:switch (num){ //注册功能 case 1: System.out.println("请您输入要注册的用户名:"); String name = sc.next(); if (register(name)){ System.out.println("注册成功"); }else { System.out.println("该用户已存在或密码格式错误"); break ; } while (x!=0){ System.out.println("请输入0返回"); x =sc.nextInt(); if (x == 0){ break out; } } //登录功能 case 2: System.out.println("请您输入用户名:"); String name2 = sc.next(); System.out.println("请您输入密码:"); String miMa = sc.next(); System.out.println(logon(name2,miMa)); while (x!=0){ System.out.println("请输入0返回"); x =sc.nextInt(); if (x == 0){ break out; } } case 3: Set<String> strings = tree.keySet(); for (String s : strings){ System.out.println(s); } while (x!=0){ System.out.println("请输入0返回"); x =sc.nextInt(); if (x == 0){ break out; } } case 4: System.out.println("感谢使用,拜拜了"); flag = false; break ; default: System.out.println("您输入的是无效数据"); } }while (flag);}
//注册功能
public static boolean register(String name){if(tree.get(name)!=null){ return false; }else { System.out.println("请输入你的密码(不能以数字0开头,长度为6-12,必须是数字):"); String password = sc.next(); if (pan(password)){ tree.put(name,password); return true; }else { return false; } }}
public static String logon(String name ,String miMa){
Set<Map.Entry<String, String>> entries = tree.entrySet();
for (Map.Entry<String, String> entry : entries){
if (name.equals(entry.getKey()) && miMa.equals(entry.getValue())){
return “登录成功,欢迎您进入” ;} } return "输入错误,请重新输入";}
public static boolean pan(String miMa){
String regex ="[1-9]\d{5,11}";
boolean matches = miMa.matches(regex);
return matches;
}
}

这个Java程序演示了如何利用HashMap数据结构创建一个简单的注册与登录系统。用户输入的用户名和密码被存储在HashMap中,通过遍历集合检查登录信息是否匹配。此外,还包含了一个验证密码格式的方法。
5万+

被折叠的 条评论
为什么被折叠?



