在cn.itcast.pojo包中建立user.java:
package cn.itcast.pojo;
public class user {
private String username;
private String password;
public user() {
super();
// TODO Auto-generated constructor stub
}
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;
}
}
在cn.itcast.dao包中建立UserDao.java:
package cn.itcast.dao;
import cn.itcast.pojo.user;
public interface UserDao {
public abstract boolean isLogin(String username,String password);
public abstract void regedit(user user);
}
在cn.itcast.dao.impl包中建立UserDaoImpl.java:
package cn.itcast.dao.impl;
import java.util.ArrayList;
import cn.itcast.dao.UserDao;
import cn.itcast.pojo.user;
public class UserDaoImpl implements UserDao{
//为了让多个方法能够使用同一个集合,就把集合定义为成员变量
//为了不让外人看到,用private
//为了让多个对象共享一个成员变量,用static
private static ArrayList<user> array=new ArrayList<user>();
public boolean isLogin(String username,String password){
//遍历集合,获取每一个用户,并判断该用户的用户名和密码是否和传递过来的想匹配
boolean flag=false;
for(user x:array){
if(x.getUsername().equals(username)
&& x.getPassword().equals(password)){
flag=true;
break;
}
}
return flag;
}
public void regedit(user user){
//把用户信息存储
array.add(user);
}
}
在cn.itcast.game中建立GuessNumber.java:
package cn.itcast.game;
import java.util.Scanner;
public class GuessNumber {
private GuessNumber(){}
public static void start(){
//产生一个随机数
int number=(int)(Math.random()*100)+1;
int count=0;
while(true){
//键盘录入数据
Scanner sc=new Scanner(System.in);
System.out.println("请输入数据(0-100)");
int num=sc.nextInt();
count++;
if(num>number){
System.out.println("大了");
}else if(num<number){
System.out.println("小了");
}else{
System.out.println("恭喜你,第"+count+"次猜中了!");
break;
}
}
}
}
在cn.itcast.test中建立userTest.java:
package cn.itcast.test;
import java.util.Scanner;
import cn.itcast.dao.UserDao;
import cn.itcast.dao.impl.UserDaoImpl;
import cn.itcast.game.GuessNumber;
import cn.itcast.pojo.user;
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 choiceString=sc.nextLine();
//多个地方要使用,所以定义到外面
UserDao uu=new UserDaoImpl();
switch(choiceString){
case "1":
System.out.println("----欢迎进入登录页面----");
System.out.println("请输入用户名:");
String username=sc.nextLine();
System.out.println("请输入密码:");
String passwrod=sc.nextLine();
boolean f=uu.isLogin(username, passwrod);
if(f){
System.out.println("登录成功!");
//玩游戏
System.out.println("你玩游戏吗?y/n");
while(true){
String resultString =sc.nextLine();
if(resultString.equalsIgnoreCase("y")){
GuessNumber.start();
System.out.println("你还玩吗?y/n");
}else{
break;
}
}
System.out.println("欢迎常来");
System.exit(0);
//break;//这个break结束的是switch循环
}else{
System.out.println("登录失败!");
}
break;
case "2":
System.out.println("----欢迎进入注册界面----");
System.out.println("请输入用户名:");
String newUsername=sc.nextLine();
System.out.println("请输入密码:");
String newpasswrod=sc.nextLine();
//把用户名和密码封装到一个对象中去
user u=new user();
u.setUsername(newUsername);
u.setPassword(newpasswrod);
uu.regedit(u);
System.out.println("注册成功!");
break;
case "3":
default:
System.out.println("谢谢使用,欢迎再来!");
System.exit(0);//强制退出
break;
}
}
}
}