集合练习:登录注册功能
Posted dean-0
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了集合练习:登录注册功能相关的知识,希望对你有一定的参考价值。
需求:
1、登录账号唯一,在注册时验证输入的账号是否可用,若已存在,则不可用,若不存在则可用
2、登录时使用账号密码进行验证
1 /** 2 * @author Administrator 3 * 登录信息 4 */ 5 public class UserLogin 6 private String UserName; 7 private String PassWord; 8 9 10 public UserLogin() 11 super(); 12 13 public UserLogin(String userName, String passWord) 14 super(); 15 UserName = userName; 16 PassWord = passWord; 17 18 public String getUserName() 19 return UserName; 20 21 public void setUserName(String userName) 22 UserName = userName; 23 24 public String getPassWord() 25 return PassWord; 26 27 public void setPassWord(String passWord) 28 PassWord = passWord; 29 30
1 import java.util.HashMap; 2 import java.util.Map; 3 import java.util.Set; 4 5 /** 6 * @author Administrator 7 * 初始化登录信息以及编写注册和登录验证功能 8 */ 9 public class UserInit 10 static Map<String, UserLogin> map; 11 //静态代码块初始化用户信息 12 static 13 map = new HashMap<>(); 14 UserLogin userLogin1 = new UserLogin("Dean", "123456"); 15 UserLogin userLogin2 = new UserLogin("Tom", "123456"); 16 UserLogin userLogin3 = new UserLogin("Jack", "123456"); 17 map.put(userLogin1.getUserName(), userLogin1); 18 map.put(userLogin2.getUserName(), userLogin2); 19 map.put(userLogin3.getUserName(), userLogin3); 20 21 22 //注册验证功能 23 public boolean Judge(String name,String password,String apassword) 24 Set<String> keys = map.keySet(); 25 for(String s:keys) 26 if(map.get(s).getUserName().equals(name)) 27 System.out.println("用户名已存在!"); 28 return false; 29 30 31 if(password.equals(apassword)) 32 System.out.println("注册成功!"); 33 return true; 34 else 35 System.out.println("两次输入密码不一致,请重新输入!"); 36 return false; 37 38 39 40 41 42 //登录验证功能 43 public boolean login(String name,String password) 44 Set<String> keys = map.keySet(); 45 for(String s:keys) 46 if(map.get(s).getUserName().equals(name)) 47 if((map.get(s).getPassWord().equals(password))) 48 System.out.println("登录成功!"); 49 return true; 50 else 51 System.out.println("用户名或密码不正确!请重新登录!"); 52 return false; 53 54 55 56 System.out.println("用户不存在,请重试输入!"); 57 return false; 58 59
1 import java.util.Scanner; 2 3 /** 4 * @author Administrator 5 * 用户操作界面 6 */ 7 public class LoginMap 8 static Scanner input = new Scanner(System.in); 9 UserInit userinit = new UserInit(); 10 boolean flag; 11 public static void main(String[] args) 12 LoginMap login = new LoginMap(); 13 System.out.println("请选择操作:1、登录\\t2、注册"); 14 int i = input.nextInt(); 15 switch (i) 16 case 1: 17 login.userLogin(); 18 break; 19 case 2: 20 login.userEnrol(); 21 break; 22 default: 23 System.out.println("感谢使用!"); 24 break; 25 26 27 28 //注册 29 public void userEnrol() 30 31 do 32 System.out.println("——————————用户注册——————————"); 33 System.out.println("请输入注册账号名:"); 34 String name = input.next(); 35 System.out.println("请输入登录密码:"); 36 String password = input.next(); 37 System.out.println("请再次确认密码:"); 38 String apassword = input.next(); 39 flag = userinit.Judge(name, password, apassword); 40 while(!false); 41 42 43 44 //登录 45 public void userLogin() 46 do 47 System.out.println("——————————用户登录——————————"); 48 System.out.println("请输入登录账号名:"); 49 String name = input.next(); 50 System.out.println("请输入登录密码:"); 51 String password = input.next(); 52 flag = userinit.login(name, password); 53 while(!flag); 54 55 56
测试运行结果:
以上是关于集合练习:登录注册功能的主要内容,如果未能解决你的问题,请参考以下文章
Java基础练习题6--.使用面向对象编程思想设计实现用户注册,登录功能.启动程序选择操作功能:1.注册,2.登录,3退出;输入1进入注册流程,提示用户输入手机号,密码,手机号...
Java基础练习题10--[使用ArrayList获取10个随机数;String类型的ArrayList集合,去除ArrayList中的重复元素,模拟注册,登录存入集合]
Java基础知识综合练习_使用集合存储_高级银行系统的搭建(注册登录存取款本行转账跨行转账销户特殊操作参数多个客户对象存入到银行类的集合,多个银行对象存入总测试类集合)