实现注册、登录功能
某用户先注册(注册信息包括用户名、密码、个人格言),
然后使用注册的信息登录。
如果登录成功,则显示个人信息;否则显示“登录失败”。
package user;
/**
* 用户基本描述类
*/
public class User {
private String username;// 用户名
private String password;// 密码
private String motto;// 格言
public User() {
}
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;
}
public String getMotto() {
return motto;
}
public void setMotto(String motto) {
this.motto = motto;
}
}
package user;
/**
* 针对用户进行操作的接口
*/
public interface UserDao {
public void regist(User user);
/*
* 用户注册功能
*/
public boolean isLogin(String username, String password);
/*
* 用户登录时功能
*/
public void Login(String username, String password, String motto);
/*
* 用户登录后功能
*/
}
package user;
import java.util.ArrayList;
/**
* 用户操作的具体实现类
*/
public class UserDaoImpl implements UserDao {
private static ArrayList<User> array = new ArrayList<User>();
@Override
public void regist(User user) {
array.add(user);// 把用户信息存储集合
}
@Override
public boolean isLogin(String username, String password) {// 遍历集合,获取每一个用户
boolean flag = false;
for (User u : array) {
if (u.getUsername().equals(username) // 判断该用户的用户名和密码是否和传递过来的匹配
&& u.getPassword().equals(password)) {
flag = true;
break;
}
}
return flag;
}
@Override
public void Login(String username, String password, String motto) {
System.out.println("用户" + username + ":您的密码为" + password + ",个人格言为"
+ motto);
}
}
package user;
import java.util.Scanner;
public class UserTest {
/**
* 用户测试类
*/
public static void main(String[] args) {
Scanner sc = new Scanner(System.in);
UserDao ud = new UserDaoImpl();
// 注册界面
System.out.println("--------------注册界面--------------");
System.out.println("请输入用户名:");
String newUsername = sc.nextLine();
System.out.println("请输入密码:");
String newPassword = sc.nextLine();
System.out.println("请输入格言:");
String motto = sc.nextLine(); // 把用户名和密码封装到一个对象中
User user = new User();
user.setUsername(newUsername);
user.setPassword(newPassword);
// 调用注册功能
// 多态
// UserDao ud = new UserDaoImpl();
// 具体类使用
// UserDaoImpl udi = new UserDaoImpl();
ud.regist(user);
System.out.println("注册成功!");
// 登录界面
System.out.println("--------------登录界面--------------");
while (true) {
System.out.println("请输入用户名:");
String username = sc.nextLine();
System.out.println("请输入密码:");
String password = sc.nextLine();
// 调用登录功能
// UserDao ud = new UserDaomImpl();
boolean flag = ud.isLogin(username, password);
if (flag) {
System.out.println("登录成功!");
ud.Login(username, password, motto);
break;
} else {
System.out.println("用户名或者密码有误,登录失败");
}
}
System.exit(0);
sc.close();
}
}
Copyright © 2018 Jin Hanquan. All rights reserved.