黑马程序员技术交流社区
标题:
【记录】代码练习-集合模拟用户登录注册玩游戏
[打印本页]
作者:
Kevin.Kang
时间:
2015-7-15 14:35
标题:
【记录】代码练习-集合模拟用户登录注册玩游戏
本帖最后由 Kevin.Kang 于 2015-7-21 14:51 编辑
用户描述类:
package com.kxg.pojo;
/**
* 用户基本描述类
*
* @author 康小广
* @version V1.0
*
*/
public class User {
// 用户名
private String username;
// 密码
private String password;
public User() {
super();
}
public User(String username, String password) {
super();
this.username = username;
this.password = password;
}
public String getUsername() {
return username;
}
public void setUsername(String username) {
this.username = username;
}
public String getPassword() {
return password;
}
public void setPassword(String password) {
this.password = password;
}
}
复制代码
作者:
Kevin.Kang
时间:
2015-7-15 14:38
用户进行操作的接口:
package com.kxg.dao;
import com.kxg.pojo.User;
/**
* 用户进行操作的接口
*
* @author 康小广
* @version V1.0
*
*/
public interface UserDao {
/**
* 用户登录功能
*
* @param username
* 用户名
* @param password
* 密码
* @return 返回是否登录成功
*/
public abstract boolean isLogin(String username, String password);
/**
* 用户注册功能
*
* @param user
* 要注册用户信息
*/
public abstract void regist(User user);
}
复制代码
作者:
Kevin.Kang
时间:
2015-7-15 14:40
用户操作的具体实现类:
package com.kxg.dao.impl;
import java.util.ArrayList;
import com.kxg.dao.UserDao;
import com.kxg.pojo.User;
/**
* 用户操作的具体实现类
*
* @author 康小广
* @version V1.0
*
*/
public class UserDaoImpl implements UserDao {
// 为了让所有用户共享这一个集合,把集合设置称为静态的,也就是说注册的用户会添加到集合中去。
// 等到登录的时候,输入的数据会去跟集合中先前添加注册用户的数据进行比对。
public static ArrayList<User> list = new ArrayList<User>();
// 拿输入的帐号和密码跟集合中的帐号密码进行比对
public boolean isLogin(String username, String password) {
boolean falg = false;
for (User u : list) {
if (u.getUsername().equals(username)
&& u.getPassword().equals(password)) {
falg = true;
}
}
return falg;
}
// 注册一个User对象,并添加到集合中去
public void regist(User user) {
list.add(user);
}
}
复制代码
作者:
Kevin.Kang
时间:
2015-7-15 14:43
用户测试类:
package com.kxg.dao.test;
import java.util.Scanner;
import com.kxg.dao.UserDao;
import com.kxg.dao.impl.UserDaoImpl;
import com.kxg.game.GuessNumber;
import com.kxg.pojo.User;
/**
* 用户测试类
*
* @author 康小广
* @version V1.0
*
*/
public class UserTest {
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("请输入您的选择:");
Scanner sc = new Scanner(System.in);
String choice = sc.nextLine();
UserDao ud = new UserDaoImpl();
switch (choice) {
case "1":
System.out.println("**************登录界面**************");
System.out.println("请输入登录名:");
String username = sc.nextLine();
System.out.println("请输入密码:");
String password = sc.nextLine();
boolean falg = ud.isLogin(username, password);
if (falg) {
System.out.println("登录成功,可以玩游戏了");
System.out.println("你要玩吗?y/n");
while (true) {
String result = sc.nextLine();
if (result.equals("y")) {
GuessNumber.start();
System.out.println("你还玩吗?y/n");
}
else
{
break;
}
}
System.out.println("谢谢使用,欢迎下次再来");
System.exit(0);
} else {
System.out.println("登录失败,用户名或密码错误");
}
break;
case "2":
System.out.println("**************注册界面**************");
System.out.println("请输入登录名:");
String newusername = sc.nextLine();
System.out.println("请输入密码:");
String newpassword = sc.nextLine();
User user = new User();
user.setUsername(newusername);
user.setPassword(newpassword);
ud.regist(user);
System.out.println("注册成功");
break;
default:
System.out.println("谢谢光临,欢迎下次再来");
System.exit(0);
break;
}
}
}
}
复制代码
欢迎光临 黑马程序员技术交流社区 (http://bbs.itheima.com/)
黑马程序员IT技术论坛 X3.2