流程图大概是这样:然后接下来仿照下面流程来写案例。。。现在还不大习惯写注释,比较难受
这是用户的实体部分:
package cn.zsp.pojo;
/**
* 这是用户实体存放处,有密码和账号
* @author zsp
* @version v1.0
*/
public class User {
private String username;
private String 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;
}
}
这是用户操作的接口:
package cn.zsp.dao;
import cn.zsp.pojo.User;
/**
* 这是用户实体存放处,有密码和账号
* @author zsp
* @version v1.0
*/
public interface UserDao {
public abstract boolean login(String username,String password);
public abstract void regist(User user);
}
这是用户的操作的实现:
package cn.zsp.dao.impl;
import cn.zsp.dao.UserDao;
import cn.zsp.pojo.User;
import java.util.ArrayList;
/**
* 这是用户实体存放处,有密码和账号
* @author zsp
* @version v1.0
*/
public class UserDaoImp implements UserDao {
private ArrayList<User> arr=new ArrayList<User>();
@Override
public boolean login(String username, String password) {
boolean flag=false;
for (User x :arr)
{
if (x.getUsername().equals(username)&&x.getPassword().equals(password))
flag=true;
}
return flag;
}
@Override
public void regist(User user) {
arr.add(user); //这个arr是一个集合 你不能在集合里使用User的方法
}
}
主方法:
package cn.zsp.test;
import cn.zsp.dao.UserDao;
import cn.zsp.dao.impl.UserDaoImp;
import cn.zsp.pojo.User;
import java.util.Scanner;
public class UserTest {
public static void main(String[] args) {
Scanner sc = new Scanner(System.in);
UserDao u =new UserDaoImp();
while(true) {
//Scanner sc = new Scanner(System.in);
// UserDao u =new UserDaoImp(); //放进来的话每次都会指向一个新的对象,所以登陆会失败
//如果想放在里面就要在方法里用静态类,但我不想用静态类,所以我把它定义在外面
System.out.println("----------------------欢迎使用-----------------------");
System.out.println("1.登陆");
System.out.println("2.注册");
System.out.println("3.退出");
String choise = sc.nextLine();
switch (choise) {
case "1":
String username = sc.nextLine();
String password = sc.nextLine();
if (u.login(username, password)) {
System.out.println("登陆成功");
} else {
System.out.println("登录失败");
}
break;
case "2":
String newusername = sc.nextLine();
String newpassword = sc.nextLine();
User user = new User();
user.setUsername(newusername);
user.setPassword(newpassword);
u.regist(user);
System.out.println("注册成功");
break;
case "3":
System.out.println("谢谢使用");
System.exit(0);
default:
break;
}
}
}
}