使用Java代码实现登录注册功能 |
您所在的位置:网站首页 › java账号密码登录方法类型是什么 › 使用Java代码实现登录注册功能 |
实现思路:分别创建5个包和5个类{cn.f.pojo(User.java);cn.f.Dao(UserDao.java);cn.f.Dao.impl(UserDaoImpl.java); cn.f.game(GuessNumber.java); cn.f.test(UserTest.java)} 第一步: 封装cn.f.pojo(User.java)类 代码: package cn.f.pojo; public class User { private String name; private String mima; public String getName() { return name; } public void setName(String name) { this.name = name; } public String getMima() { return mima; } public void setMima(String mima) { this.mima = mima; } public User(String name, String mima) { super(); this.name = name; this.mima = mima; } public User() { super(); } @Override public String toString() { return "User [name=" + name + ", mima=" + mima + "]"; } }
第二步: 创建一个用户登录注册接口cn.f.Dao(UserDao.java) 代码: package cn.f.Dao; import cn.f.pojo.User; public interface UserDao { // 这是登陆功能 public abstract boolean isLogin(String name,String mima); //这是注册功能 public abstract void regist(User user); }
第三步: 创建一个实现用户登录注册功能实现类cn.f.Dao.impl(UserDaoImpl.java) 代码: package cn.f.Dao.impl; import java.util.ArrayList; import cn.f.Dao.UserDao; import cn.f.pojo.User; //这是用户操作具体实现类 public class UserDaoImpl implements UserDao { // 为了让多个方法能够使用一个集合,就把集合定义为成员变量 // 为了不让外人看到,就用private // 为了让多个对象共享同一个成员变量用static private static ArrayList u = new ArrayList(); @Override public boolean isLogin(String name, String mima) { // 遍历集合,获取每一个用户,并判断该用户名和密码是否和传递过来的匹配 boolean flag = false; for (User s : u) { if (s.getName().equals(name) && s.getMima().equals(mima)) { flag = true; break; } } return flag; } @Override public void regist(User user) { // 把用户信息存储集合 u.add(user); } }
第四步: 增加用户体验用户注册登录成功后给用户玩个小游戏cn.f.game(GuessNumber.java) 代码: package cn.f.game; import java.util.Scanner; public class GuessNumber { private GuessNumber() { } public static void strat() { // 产生一个随机数 int number = (int) (Math.random() * 100) + 1; // 定义一个统计变量 int count = 0; while (true) { Scanner sc = new Scanner(System.in); System.out.println("请输入数据(1-100):"); int guessNumber = sc.nextInt(); count++; // 判断 if (guessNumber > number) { System.out.println("你猜的数据" + guessNumber + "大了"); } else if (guessNumber < number) { System.out.println("你猜的数据" + guessNumber + "小了"); } else { System.out.println("恭喜你,"+count+"次猜中了!"); break; } } } }
第五步: 实现用户登录注册功能测试cn.f.test(UserTest.java) 代码: package cn.f.test; import java.util.Scanner; import cn.f.Dao.UserDao; import cn.f.Dao.impl.UserDaoImpl; import cn.f.game.GuessNumber; import cn.f.pojo.User; public class UserTest { static Scanner sc = new Scanner(System.in); // 多态 static UserDao ud = new UserDaoImpl(); public static void main(String[] args) { while (true) { // 欢迎界面,给出选项 System.out.println("-------------欢迎光临--------------"); System.out.println("1.登录"); System.out.println("2.注册"); System.out.println("3.退出"); System.out.println("请输入你的选择:"); // 键盘录入选择,根据选择做出不同的操作 // 为了后面录入信息的方便,我所有的数据录入全部用字符接受 String m = sc.nextLine(); switch (m) { case "1": denglu(); break; case "2": zhuce(); break; case "3": default: System.out.println("谢谢使用,欢迎下次再来!"); System.exit(0); } } } public static void denglu() { System.out.println("-------------登录界面(请先注册后再登录!)--------------"); System.out.println("请输入用户名:"); String n = sc.nextLine(); System.out.println("请输入密码:"); String p = sc.nextLine(); // 调用登录功能 boolean flag = ud.isLogin(n, p); if (flag) { System.out.println("登录成功!奖励你玩游戏。"); System.out.println("你要玩吗?y/n"); while (true) { String r = sc.nextLine(); if (r.equalsIgnoreCase("y")) { // 玩游戏 GuessNumber.strat(); System.out.println("是否继续游戏?y/n"); }else{ break; } } System.out.println("谢谢使用,欢迎下次再来!"); System.exit(0); } else { System.out.println("用户名或者密码有误,登录失败!"); } } public static void zhuce() { // 注册界面,请输入用户名和密码 System.out.println("-------------注册界面--------------"); System.out.println("请输入用户名:"); String name = sc.nextLine(); System.out.println("请输入密码:"); String mima = sc.nextLine(); // 把用户名和密码封装到一个对象中 User user = new User(); user.setName(name); user.setMima(mima); // 调用注册功能 ud.regist(user); System.out.println("注册成功!"); } }
代码运行结果: -------------欢迎光临-------------- 1.登录 2.注册 3.退出 请输入你的选择: 1 -------------登录界面(请先注册后再登录!)-------------- 请输入用户名: 232 请输入密码: 232 用户名或者密码有误,登录失败! -------------欢迎光临-------------- 1.登录 2.注册 3.退出 请输入你的选择: 2 -------------注册界面-------------- 请输入用户名: 1234 请输入密码: 1234 注册成功! -------------欢迎光临-------------- 1.登录 2.注册 3.退出 请输入你的选择: 1 -------------登录界面(请先注册后再登录!)-------------- 请输入用户名: 1234 请输入密码: 1234 登录成功!奖励你玩游戏。 你要玩吗?y/n y 请输入数据(1-100): 67 你猜的数据67小了 请输入数据(1-100): 87 你猜的数据87大了 请输入数据(1-100): 80 你猜的数据80大了 请输入数据(1-100): 78 你猜的数据78大了 请输入数据(1-100): 76 你猜的数据76大了 请输入数据(1-100): 74 你猜的数据74小了 请输入数据(1-100): 75 恭喜你,7次猜中了! 是否继续游戏?y/n n 谢谢使用,欢迎下次再来!
|
今日新闻 |
推荐新闻 |
CopyRight 2018-2019 办公设备维修网 版权所有 豫ICP备15022753号-3 |