import java.util.ArrayList;import java.util.Scanner;class Clothes { private String name; private String color; private int size; public Clothes(String name, String color, int size) { this.name = name; this.color = color; this.size = size; } public String getName() { return name; } public String getColor() { return color; } public int getSize() { return size; }}class Wardrobe { private ArrayList<Clothes> clothesList = new ArrayList<>(); public void addClothes(Clothes clothes) { clothesList.add(clothes); } public void removeClothes(int index) { clothesList.remove(index); } public void listClothes() { for (int i = 0; i < clothesList.size(); i++) { Clothes clothes = clothesList.get(i); System.out.println((i + 1) + ". " + clothes.getName() + " (" + clothes.getColor() + ", " + clothes.getSize() + ")"); } }}public class WardrobeManagementSystem { public static void main(String[] args) { Wardrobe wardrobe = new Wardrobe(); Scanner scanner = new Scanner(System.in); 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 name = scanner.nextLine(); System.out.println("请输入衣物颜色:"); String color = scanner.nextLine(); System.out.println("请输入衣物尺寸:"); int size = scanner.nextInt(); scanner.nextLine(); Clothes clothes = new Clothes(name, color, size); wardrobe.addClothes(clothes); System.out.println("衣物添加成功!"); break; case 2: System.out.println("请输入要删除的衣物编号:"); int index = scanner.nextInt() - 1; scanner.nextLine(); wardrobe.removeClothes(index); System.out.println("衣物删除成功!"); break; case 3: wardrobe.listClothes(); break; case 4: System.out.println("程序已退出!"); System.exit(0); default: System.out.println("输入有误,请重新输入!"); break; } } }}扩充代码可以查看某一颜色或尺码的所有衣物
时间: 2024-01-24 20:03:04 浏览: 66
您可以在Wardrobe类中添加两个新方法,一个是按颜色过滤的方法,另一个是按尺码过滤的方法。具体实现方法如下:
```
public ArrayList<Clothes> filterByColor(String color) {
ArrayList<Clothes> filteredList = new ArrayList<>();
for (Clothes clothes : clothesList) {
if (clothes.getColor().equals(color)) {
filteredList.add(clothes);
}
}
return filteredList;
}
public ArrayList<Clothes> filterBySize(int size) {
ArrayList<Clothes> filteredList = new ArrayList<>();
for (Clothes clothes : clothesList) {
if (clothes.getSize() == size) {
filteredList.add(clothes);
}
}
return filteredList;
}
```
然后在WardrobeManagementSystem类中添加两个新的操作:
```
case 5:
System.out.println("请输入要查找的颜色:");
String color = scanner.nextLine();
ArrayList<Clothes> colorList = wardrobe.filterByColor(color);
if (colorList.isEmpty()) {
System.out.println("没有找到符合条件的衣物!");
} else {
System.out.println("符合条件的衣物如下:");
for (Clothes clothes : colorList) {
System.out.println(clothes.getName() + " (" + clothes.getColor() + ", " + clothes.getSize() + ")");
}
}
break;
case 6:
System.out.println("请输入要查找的尺码:");
int size = scanner.nextInt();
scanner.nextLine();
ArrayList<Clothes> sizeList = wardrobe.filterBySize(size);
if (sizeList.isEmpty()) {
System.out.println("没有找到符合条件的衣物!");
} else {
System.out.println("符合条件的衣物如下:");
for (Clothes clothes : sizeList) {
System.out.println(clothes.getName() + " (" + clothes.getColor() + ", " + clothes.getSize() + ")");
}
}
break;
```
这样,用户就可以选择按颜色或尺码查找衣物了。操作5用于按颜色查找,操作6用于按尺码查找。
阅读全文