1.集合类的操作。模拟用户登录,实现对多个用户信息的操作。 【需求】:对用户类的操作,添加用户(注册功能)、查找用户(登录功能)、修改用户(重置密码)等 【思路】: 1. 定义用户类的JavaBean:User(用户名、密码、生日) 2. 定义接口: 用户操作接口(IUserDao) 包含添加用户(注册功能)、查找用户(登录功能)、用户(重置密码)三 种抽象方法 3. 定义实现接口类:UserDaoImpl, 重写三个抽象方法,其中的登录功能可以“模拟用户登录”实验来完成。 4. 在test包中,定义一个测试类(TestUser), (1)添加main方法,定义ArrayList集合对象,实现添加3个学生的信息并存储在集合对象里。 (2)ArrayList集合元素采用增强型for实现遍历。 List集合元素采用迭代器遍历。
时间: 2024-03-13 09:43:00 浏览: 77
【仅需5积分】1200张高质量头像集合,伪用户直接可用
好的,针对您的需求,我们可以使用Java集合类来实现对多个用户信息的操作。具体实现可以参考以下代码:
1. 定义用户类的JavaBean:User
```java
public class User {
private String username;
private String password;
private String birthday;
public User(String username, String password, String birthday) {
this.username = username;
this.password = password;
this.birthday = birthday;
}
// getter和setter方法
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 getBirthday() {
return birthday;
}
public void setBirthday(String birthday) {
this.birthday = birthday;
}
}
```
2. 定义用户操作接口:IUserDao
```java
public interface IUserDao {
void addUser(User user);
User findUser(String username);
void resetPassword(String username, String newPassword);
}
```
3. 实现用户操作接口类:UserDaoImpl
```java
import java.util.ArrayList;
import java.util.Iterator;
import java.util.List;
public class UserDaoImpl implements IUserDao {
private List<User> users = new ArrayList<>();
@Override
public void addUser(User user) {
users.add(user);
}
@Override
public User findUser(String username) {
for (User user : users) {
if (user.getUsername().equals(username)) {
return user;
}
}
return null;
}
@Override
public void resetPassword(String username, String newPassword) {
User user = findUser(username);
if (user != null) {
user.setPassword(newPassword);
}
}
public List<User> getUsers() {
return users;
}
public void setUsers(List<User> users) {
this.users = users;
}
public void printUsers() {
for (User user : users) {
System.out.println(user.getUsername() + " " + user.getPassword() + " " + user.getBirthday());
}
}
public void printUsersWithIterator() {
Iterator<User> iter = users.iterator();
while (iter.hasNext()) {
User user = iter.next();
System.out.println(user.getUsername() + " " + user.getPassword() + " " + user.getBirthday());
}
}
}
```
4. 在test包中,定义一个测试类:TestUser
```java
import java.util.ArrayList;
public class TestUser {
public static void main(String[] args) {
// 创建用户操作实现类
UserDaoImpl userDao = new UserDaoImpl();
// 添加用户
userDao.addUser(new User("Alice", "123456", "2000-01-01"));
userDao.addUser(new User("Bob", "abcdef", "1999-02-02"));
userDao.addUser(new User("Charlie", "qwerty", "1998-03-03"));
// 使用增强型for循环遍历用户
ArrayList<User> users = (ArrayList<User>) userDao.getUsers();
for (User user : users) {
System.out.println(user.getUsername() + " " + user.getPassword() + " " + user.getBirthday());
}
// 使用迭代器遍历用户
userDao.printUsersWithIterator();
// 修改密码
userDao.resetPassword("Alice", "654321");
// 查找用户
User user = userDao.findUser("Bob");
if (user != null) {
System.out.println(user.getUsername() + " " + user.getPassword() + " " + user.getBirthday());
} else {
System.out.println("User not found");
}
}
}
```
以上代码中,我们首先定义了一个用户类 `User`,包含用户名、密码和生日三个属性。然后我们定义了一个用户操作接口 `IUserDao`,包含添加用户、查找用户和修改用户密码三个抽象方法。接着我们实现了用户操作接口类 `UserDaoImpl`,使用 ArrayList 集合来保存多个用户信息,并实现了接口中的三个方法。我们还在该类中定义了两个方法来遍历用户列表,一个是使用增强型for循环,另一个是使用迭代器。
最后我们在测试类 `TestUser` 中使用用户操作实现类 `UserDaoImpl`,添加了三个用户信息,并使用增强型for循环和迭代器分别遍历了用户列表。我们还修改了其中一个用户的密码,并查找了另一个用户的信息。
希望以上代码对您有所帮助!
阅读全文