用arraylist实例Java简易购物车系统的用户类,其要求如下,从键盘读入手机号和密码进行登录。初始用户有5个。用arraylist实例Java简易购物车系统的用户类,其要求如下,从键盘读入手机号和密码进行登录。初始用户有5个。可以注册新账户。
时间: 2024-02-05 22:13:21 浏览: 63
java 简易购物车系统
3星 · 编辑精心推荐
以下是一个简单的使用ArrayList实现购物车系统用户类的示例代码:
```java
import java.util.ArrayList;
import java.util.Scanner;
public class User {
private String phoneNumber;
private String password;
private ArrayList<String> cart;
public User(String phoneNumber, String password) {
this.phoneNumber = phoneNumber;
this.password = password;
this.cart = new ArrayList<>();
}
public String getPhoneNumber() {
return phoneNumber;
}
public String getPassword() {
return password;
}
public ArrayList<String> getCart() {
return cart;
}
public void addToCart(String item) {
cart.add(item);
}
public void removeFromCart(String item) {
cart.remove(item);
}
public static void main(String[] args) {
ArrayList<User> users = new ArrayList<>();
// 添加初始用户
users.add(new User("123456789", "password1"));
users.add(new User("987654321", "password2"));
users.add(new User("111111111", "password3"));
users.add(new User("222222222", "password4"));
users.add(new User("333333333", "password5"));
Scanner scanner = new Scanner(System.in);
while (true) {
System.out.println("请输入手机号:");
String phoneNumber = scanner.nextLine();
System.out.println("请输入密码:");
String password = scanner.nextLine();
// 验证用户登录
boolean loggedIn = false;
User currentUser = null;
for (User user : users) {
if (user.getPhoneNumber().equals(phoneNumber) && user.getPassword().equals(password)) {
loggedIn = true;
currentUser = user;
break;
}
}
if (loggedIn) {
System.out.println("登录成功,欢迎使用购物车系统!");
// 购物车操作
while (true) {
System.out.println("请选择操作:");
System.out.println("1. 添加商品到购物车");
System.out.println("2. 从购物车中删除商品");
System.out.println("3. 查看购物车");
System.out.println("4. 退出购物车系统");
int choice = scanner.nextInt();
scanner.nextLine(); // 读取换行符
switch (choice) {
case 1:
System.out.println("请输入要添加的商品名:");
String itemToAdd = scanner.nextLine();
currentUser.addToCart(itemToAdd);
System.out.println(itemToAdd + " 已经添加到购物车");
break;
case 2:
System.out.println("请输入要删除的商品名:");
String itemToRemove = scanner.nextLine();
if (currentUser.getCart().contains(itemToRemove)) {
currentUser.removeFromCart(itemToRemove);
System.out.println(itemToRemove + " 已从购物车中删除。");
} else {
System.out.println("购物车中没有该商品!");
}
break;
case 3:
ArrayList<String> cart = currentUser.getCart();
if (cart.size() == 0) {
System.out.println("购物车为空!");
} else {
System.out.println("购物车中的商品有:");
for (String item : cart) {
System.out.println(item);
}
}
break;
case 4:
System.out.println("退出购物车系统。");
loggedIn = false;
break;
default:
System.out.println("无效选择,请重新输入。");
break;
}
if (!loggedIn) {
break;
}
}
} else {
System.out.println("手机号或密码错误,请重新输入。");
}
// 注册新用户
System.out.println("是否需要注册新账户?(Y/N)");
String registerChoice = scanner.nextLine();
if (registerChoice.equalsIgnoreCase("Y")) {
System.out.println("请输入手机号:");
String newPhoneNumber = scanner.nextLine();
System.out.println("请输入密码:");
String newPassword = scanner.nextLine();
users.add(new User(newPhoneNumber, newPassword));
System.out.println("注册成功!");
} else {
System.out.println("谢谢使用购物车系统!");
break;
}
}
scanner.close();
}
}
```
该示例代码中,User类表示购物车系统中的用户,包含手机号、密码和购物车等属性。在main方法中,使用ArrayList存储所有已注册的用户对象,并通过循环读取用户输入的手机号和密码进行登录验证。如果验证成功,则进入购物车操作循环,可以添加、删除和查看购物车中的商品。如果需要注册新账户,则可以输入手机号和密码进行注册。最后,使用Scanner关闭。
阅读全文