ÎncepețiÎncepe gratuit

Grupare după categorii standardizate

Acum că ai standardizat categoriile din inventarul de electronice, vrei să calculezi cantitatea corespunzătoare fiecărei categorii. Combină cantitățile în sume pe categorii.

Acest exercițiu face parte din cursul

Curățarea datelor în Java

Vezi cursul

Instrucțiuni pentru exercițiu

  • Definește un map de tip enum pentru a stoca cantitatea fiecărei ProductCategory în stockByCategory.
  • Combină cantitățile în sume pe categorii în stockByCategory.

Exercițiu interactiv practic

Încearcă acest exercițiu completând acest cod de exemplu.

public class ElectronicsCategoryExample {
    public enum ProductCategory {
        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);
        
        Map rawData = Map.of(
                "Home Appliances", 50,
                "home appliances", 25,
                "HomeAppliances", 15,
                "Electronics", 30,
                "electronics", 20,
                "Electronic", 10);

        // Define an enum map to store the quantity of each ProductCategory
        Map stockByCategory = new ____<>(____.class);

        // Merge the quantities into category sums
        rawData.forEach((raw, quantity) -> ____.____(categoryMap.get(raw), quantity, Integer::sum));

		System.out.println("Stock by category:");
        System.out.println(stockByCategory);
    }
}
Editează și rulează codul