(一)集合实现用户注册登录
//用户类
class User{
private String userName;//封装,保证数据安全,防止被更改
private String password;
//构造函数
public User(String userName, String password) {
super();
this.userName = userName;
this.password = password;
}
//get set函数
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;
}
@Override
public String toString() {
return "{用户名:"+this.userName+" 密码:"+this.password+"}";
}
@Override
public boolean equals(Object obj) {
User user=(User)obj;//强制类型转换,才能调用子类特有的成员
return this.userName.equals(user.userName)&&this.password.equals(user.password);
}
}
public class login {
//创建一个集合对象用于存储用户的数据
static Collection users=new ArrayList();//共享出来,函数都可以直接访问到
static Scanner scanner=new Scanner(System.in);
public static void main(String[] args) {
while(true) {
System.out.println("请选择功能:R(注册) L(登录)");
String option=scanner.next();//获取用户输入
if("R".equalsIgnoreCase(option)) {//注册
System.out.println("你选择了注册功能...");
register();
}else if("L".equalsIgnoreCase(option)) {//登录
System.out.println("你选择了登录功能...");
log();
}
}
}
public static void log() {
System.out.println("请输入用户名:");
String userName=scanner.next();
System.out.println("请输入密码:");
String password=scanner.next();
/*
//contains()遍历
User user=new User(userName,password);
if(users.contains(user)) {
System.out.println("登录成功...");
}else {
System.out.println("用户名或密码错误...");
}*/
//使用迭代器迭代 遍历
Iterator it=users.iterator();//获取迭代器
int flag=0;//标记是否登陆成功
while(it.hasNext()) {
User user=(User)it.next();//
String name=user.getUserName();
String pwd=user.getPassword();
if(userName.equals(name)&&password.equals(pwd)) {
System.out.println("用户登录成功!!!");
flag=1;
break;
}
}
if(flag==0) {
System.out.println("用户名或密码错误...");
}
}
public s