Bắt đầu ngayBắt đầu miễn phí

Xây dựng ánh xạ danh mục

Bạn đang quản lý hàng tồn kho cho cửa hàng điện tử và cần chuẩn hóa các danh mục sản phẩm điện tử trong kho. Hãy tạo một ánh xạ danh mục để giúp bạn theo dõi các sản phẩm trong cửa hàng.

Các gói cần thiết như EnumMapHashMap đã được nhập sẵn cho bạn.

Bài tập này là một phần của khóa học

Làm sạch dữ liệu bằng Java

Xem khóa học

Hướng dẫn bài tập

  • Tạo một enum tên là ProductCategory.
  • Tra cứu một danh mục không xác định tên "Mystery category".
  • Tạo một map không thể chỉnh sửa (unmodifiable) từ categoryMap.

Bài tập tương tác thực hành trực tiếp

Hãy thử làm bài tập này bằng cách hoàn thành đoạn mã mẫu này.

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");
        }
    }
}
Chỉnh sửa và Chạy Mã