定义接口
代码示例
package org.westos.dao;
import org.westos.entity.User;
public interface UserDao {
public abstract boolean isLogin(String username,String password);
public abstract void regist(User user);
}
定义接口的子实现类
package org.westos.dao.impl;
import java.util.ArrayList;
import org.westos.dao.UserDao;
import org.westos.entity.User;
public class UserDaoImpl implements UserDao {
private static ArrayList<User> arrayList = new ArrayList<User>();
@Override
public boolean isLogin(String username, String password) {
// TODO Auto-generated method stub
boolean flag = false;
for (User user : arrayList) {
if (user.getName().equals(username) && user.getPassword().equals(password)) {
flag = true;
break;
}
}
return flag;
}
@Override
public void regist(User user) {
// TODO Auto-generated method stub
arrayList.add(user);
}
}
定义实体类
代码示例i示例i
package org.westos.entity;
public class User {
private String name;
private String password;
public User() {
super();
// TODO Auto-generated constructor stub
}
public User(String name, String password) {
super();
this.name = name;
this.password = password;
}
public String getName() {
return name;
}
public void setName(String name) {
this.name = name;
}
public String getPassword() {
return password;
}
public void setPassword(String password) {
this.password = password;
}
}
猜数字小游戏
package org.westos.game;
import java.util.Scanner;
public class GuessNumberGame {
private static Scanner sc;
public GuessNumberGame() {
super();
// TODO Auto-generated constructor stub
}
public static void start() {
sc = new Scanner(System.in);
int num = (int) (Math.random() * 100 + 1);
int count = 0;
while (true) {
System.out.println("请猜一个数字:");
int guessNumber = sc.nextInt();
count++;
if (guessNumber > num) {
System.out.println("你猜的大了");
} else if (guessNumber < num) {
System.out.println("你猜的小了");
} else { // guessNumber==num
System.out.println("恭喜您在第" + count + "次猜中了");
break;
}
}
}
}
定义测试类
package org.westos.test;
import java.util.Scanner;
import org.westos.dao.impl.UserDaoImpl;
import org.westos.entity.User;
import org.westos.game.GuessNumberGame;
public class UserTest {
private static Scanner in;
public static void main(String[] args) {
// TODO Auto-generated method stub
while (true) {
System.out.println("-----------欢迎使用-----------");
System.out.println("1.登录");
System.out.println("2.注册");
System.out.println("3.退出");
UserDaoImpl userDaoImpl = new UserDaoImpl();
System.out.println("请输入你的选择:");
in = new Scanner(System.in);
int choice = in.nextInt();
switch (choice) {
case 1:
System.out.println("请输入你的用户名");
String username = in.nextLine();
System.out.println("请输入你的密码");
String password = in.nextLine();
boolean flag = userDaoImpl.isLogin(username, password);
if (flag) {
System.out.println("让我们来玩猜数字游戏吧!!!");
System.out.println("你想玩吗?y/n");
while (true) {
String string = in.nextLine();
if (string.equalsIgnoreCase("y")) {
GuessNumberGame.start();
System.out.println("还玩吗? y/n");
} else {
break;
}
}
} else {
System.out.println("您输入的用户名或者密码有错误");
}
break;
case 2:
System.out.println("请输入您想要使用的用户名:");
String newUserName = in.nextLine();
System.out.println("请设置您的密码:");
String newPassword = in.nextLine();
// 将用户名和密码封装到User对象中
User user = new User();
user.setName(newUserName);
user.setPassword(newPassword);
userDaoImpl.regist(user);
System.out.println("注册成功");
break;
case 3:
default:
System.out.println("谢谢使用,欢迎下次使用");
System.exit(0);
;
break;
}
}
}
}