开始使用免费开始使用

构建类别映射

您正在管理一家电子产品商店的库存,需要将库存中的电子类别进行标准化。请创建一个类别映射,以便更好地跟踪店内商品。

所需的包(如 EnumMapHashMap)已为您导入。

本练习是课程的一部分

Java 数据清洗

查看课程

练习说明

  • 创建一个名为 ProductCategoryenum
  • 查询一个名为 "Mystery category" 的未知类别。
  • 使用 categoryMap 创建一个不可修改的映射。

交互式实操练习

通过完成这段示例代码来试试这个练习。

public class ElectronicsCategoryExample {
	// Create an enum called ProductCategory
    public ____ ____ {
        ELECTRONICS,
        HOME_APPLIANCES,
        UNCATEGORIZED;
    }

    public static void main(String[] args) {
    	Map categoryMap = new HashMap<>();
        categoryMap.put("Home Appliances", ProductCategory.HOME_APPLIANCES);
        categoryMap.put("home appliances", ProductCategory.HOME_APPLIANCES);
        categoryMap.put("HomeAppliances", ProductCategory.HOME_APPLIANCES);
        categoryMap.put("Electronics", ProductCategory.ELECTRONICS);
        categoryMap.put("electronics", ProductCategory.ELECTRONICS);
        categoryMap.put("Electronic", ProductCategory.ELECTRONICS);
        
        System.out.println("Electronics category:");
        System.out.println(categoryMap.get("Electronics"));
        
        // Look up an unknown category
        ProductCategory unknownCategory = ____.____(
    			"Mystery category", ProductCategory.UNCATEGORIZED);
                
        System.out.println("\nMystery category:");
        System.out.println(unknownCategory);
        
        // Create an unmodifiable map
        Map immutableMap = ____.____(categoryMap);
        
        System.out.println("\nAttempting to modify immutable map:");
        try {
            immutableMap.put("new", ProductCategory.ELECTRONICS);
        } catch (UnsupportedOperationException e) {
            System.out.println("Cannot modify immutable map");
        }
    }
}
编辑并运行代码