package cn.itcast.dao;
//用户功能类的接口
import cn.itcast.domain.User;
/**
* 用户功能类的接口
*/
public interface UserDao {
/**
* 用户注册的方法
* @param user
*/
public abstract void userRegsit(User user) ;
/**
* 用户登录的方法
* @param userName
* @param userPassword
* @return
*/
public abstract boolean userLogin(String userName , String userPassword) ;
}
//接口的实现类包
package cn.itcast.dao.impl;
import java.util.ArrayList;
import cn.itcast.dao.UserDao;
import cn.itcast.domain.User;
public class UserDaoImpl implements UserDao {
// 创建一个集合对象
private static ArrayList<User> users = new ArrayList<User>() ;
@Override
public void userRegsit(User user) {
/**
* 思路: 把用户直接存储到集合中
*/
// 添加元素
users.add(user) ;
}
public boolean userLogin(String userName, String userPassword) {
// 定义一个boolean类型的变量 , 作用: 记录登录的结果
boolean flag = false ;
/**
* 思路: 遍历集合,获取每一个User对象,然后使用该User对象中的用户名和密码与传递进来的用户名和密码进行匹配
* 如果都匹配成功,那么说明登录成功 ; 否则登录失败
*/
for(User user : users){
if(user.getUserName().equals(userName) && user.getUserPassword().equals(userPassword)){
flag = true ;
break ;
}
}
// 返回结果
return flag;
}
}
//用户类包
package cn.itcast.domain;
public class User {
// 成员变量
private String userName ; // 用户名
private String userPassword ; // 密码
public User() {
super();
}
public User(String userName, String userPassword) {
super();
this.userName = userName;
this.userPassword = userPassword;
}
public String getUserName() {
return userName;
}
public void setUserName(String userName) {
this.userName = userName;
}
public String getUserPassword() {
return userPassword;
}
public void setUserPassword(String userPassword) {
this.userPassword = userPassword;
}
}
//游戏包
package cn.itcast.game;
import java.util.Random;
import java.util.Scanner;
public class GuessGame {
private GuessGame() {}
public static int startGame() {
System.out.println("-------------------进入猜数字小游戏---------------------");
// 生成随机数
Random random = new Random() ;
int randomNum = random.nextInt(100) + 1 ;
// 键盘录入数据
Scanner sc = new Scanner(System.in) ;
// 定义一个猜数字的次数
int guessNum = 5 ;
// 定义一个int类型的变量,作用: 用来记录猜数字的结果
int result = 1 ;
while(true){
if(guessNum == 0){
System.out.println("次数不够了........................");
break ;
}
System.out.println("请您输入一个数字: ");
int num = sc.nextInt() ;
if(num == randomNum){
System.out.println("恭喜您猜中了,到账100万................");
result = 2 ;
break ;
}else if(num > randomNum){
System.out.println("对不起大了.................");
}else {
System.out.println("对不起小了..................");
}
guessNum-- ;
}
return result ;
}
public static void main(String[] args) {
startGame() ;
}
}
//测试类包
package cn.itcast.test;
import java.util.Scanner;
import cn.itcast.dao.UserDao;
import cn.itcast.dao.impl.UserDaoImpl;
import cn.itcast.domain.User;
import cn.itcast.game.GuessGame;
public class UserTest {
public static void main(String[] args) {
int userMoney = 1000 ;
while(true){
System.out.println("==================欢迎使用ITCAST后台管理系统==================");
System.out.println("1: 登录") ;
System.out.println("2: 注册") ;
System.out.println("3: 退出") ;
System.out.println("===========================================================");
// 创建Scanner对象让用户进行选择
Scanner sc = new Scanner(System.in) ;
System.out.println("你好 , 请输入您的选项(1,2,3):");
String choice = sc.nextLine() ;
// 创建用户功能类的对象
UserDao userDao = new UserDaoImpl() ;
// 进行选择
switch(choice){
case "1" :
System.out.println("==================欢迎登录==================");
System.out.println("请您输入用户名: ");
String userName = sc.nextLine() ;
System.out.println("请您输入密码: ");
String userPassword = sc.nextLine() ;
// 登录
boolean flag = userDao.userLogin(userName, userPassword) ;
if(flag){
System.out.println("恭喜您,登录成功....................");
System.out.println("是否玩猜数字小游戏,猜中可获得100万奖金Y/N?");
while(true){
String line = sc.nextLine() ;
if(line.equalsIgnoreCase("Y")){
if(userMoney > 400){
int result = GuessGame.startGame();
if(result == 2) {
userMoney += 1000000 ;
}else {
userMoney -= 400 ;
}
System.out.println("还想玩吗? Y / N");
}else {
System.out.println("余额不足请充值...............");
System.exit(0); // 退出虚拟机
}
}else {
System.exit(0); // 退出虚拟机
}
}
}else {
System.out.println("用户名或者密码错误..................");
}
break ;
case "2" :
System.out.println("==================欢迎注册==================");
System.out.println("请您输入用户名: ");
String inputUserName = sc.nextLine() ;
System.out.println("请您输入密码: ");
String inputUserPassword = sc.nextLine() ;
// 把用户录入的数据封装成一个User对象
User user = new User() ;
user.setUserName(inputUserName) ;
user.setUserPassword(inputUserPassword) ;
// 调用用户功能类完成注册
userDao.userRegsit(user) ;
System.out.println("恭喜您注册成功..........................");
break ;
case "3" :
default :
System.out.println("欢迎下次再来,哈哈...............");
System.exit(0) ; // 退出系统
}
}
}
}
多多交流。。。。。微信yan451704940
|
|