A股上市公司传智教育(股票代码 003032)旗下技术交流社区北京昌平校区

 找回密码
 加入黑马

QQ登录

只需一步,快速开始

使用集合模拟用户注册登陆并进行测试。
其中:
   注册即是向集合中添加数据。
   User类:
         属性:username password
   测试类中:
       控制台输入数据       含义
            1               代表登陆
            2               代表注册
            3               代表退出
       注册时如果集合中没有相同的数据就提示注册成功,否之注册失败。
       登陆时用户输入的用户名和密码与集合中的数据进行匹配
       如果相同就提示:登陆成功;否之提示登录失败。
User类:
public class User {
      //用户名
      privateString username;
      //密码
      privateString password;
      publicUser() {
      }
      publicString getUsername() {
           returnusername;
      }
      publicvoid setUsername(String username) {
           this.username= username;
      }
      publicString getPassword() {
           returnpassword;
      }
      publicvoid setPassword(String password) {
           this.password= password;
      }
}
UserDaoImpl类:
import java.util.ArrayList;
public class UserDaoImpl {
      //为了让多个方法能够使用同一个集合,就把集合定义为成员变量
      //为了不让外人看到,用private
      //为了让多个对象共享同一个成员变量,用static
      privatestatic ArrayList<User> array = new ArrayList<User>();
      publicboolean isLogin(String username, String password) {
           //遍历集合,获取每一个用户,并判断该用户的用户名和密码是否和传递过来的匹配
           booleanflag = false;
           for(User u : array) {
                 if(u.getUsername().equals(username)
                            &&u.getPassword().equals(password)) {
                      flag= true;
                      break;
                 }
           }
           returnflag;
      }
      publicvoid regist(User user) {
           //把用户信息存储集合
           //ArrayList<User> array = new ArrayList<User>();
           array.add(user);
      }
}
测试类:
package cn.itcast.day12;
import java.util.Scanner;
public class UserTest {
      publicstatic void main(String[] args) {
           //为了能够回来
           while(true) {
                 //欢迎界面,给出选择项
                 System.out.println("--------------欢迎光临--------------");
                 System.out.println("1登录");
                 System.out.println("2注册");
                 System.out.println("3退出");
                 System.out.println("请输入你的选择:");
                 //键盘录入选择,根据选择做不同的操作
                 Scannersc = new Scanner(System.in);
                 //为了后面的录入信息的方便,我所有的数据录入全部用字符接收
                 StringchoiceString = sc.nextLine();
                 //switch语句的多个地方要使用,我就定义到外面
                 UserDaoImplud = new UserDaoImpl();
                 //经过简单的思考,我选择了switch
                 switch(choiceString) {
                 case"1":
                      //登录界面,请输入用户名和密码
                      System.out.println("--------------登录界面--------------");
                      System.out.println("请输入用户名:");
                      Stringusername = sc.nextLine();
                      System.out.println("请输入密码:");
                      Stringpassword = sc.nextLine();
                      booleanflag = ud.isLogin(username, password);
                      if(flag) {
                            System.out.println("登录成功,可以开始玩游戏了");
                      }else {
                            System.out.println("用户名或者密码有误,登录失败");
                      }
                      break;
                 case"2":
                      //欢迎界面,请输入用户名和密码
                      System.out.println("--------------注册界面--------------");
                      System.out.println("请输入用户名:");
                      StringnewUsername = sc.nextLine();
                      System.out.println("请输入密码:");
                      StringnewPassword = sc.nextLine();
                      //把用户名和密码封装到一个对象中
                      Useruser = new User();
                      user.setUsername(newUsername);
                      user.setPassword(newPassword);
                      ud.regist(user);
                      System.out.println("注册成功");
                      break;
                 case"3":
                 default:
                      System.out.println("谢谢使用,欢迎下次再来");
                      System.exit(0);
                      break;
                 }
           }
      }
}

4 个回复

倒序浏览
回复 使用道具 举报
6666666666666
回复 使用道具 举报
好简单啊
回复 使用道具 举报
回复 使用道具 举报
您需要登录后才可以回帖 登录 | 加入黑马