Gruppieren nach standardisierten Kategorien
Nachdem du die Kategorien deines Elektronikbestands standardisiert hast, möchtest du die Menge jeder Kategorie berechnen. Fasse die Mengen zu Kategoriesummen zusammen.
Diese Übung ist Teil des Kurses
<Kurs>Datenbereinigung in Java</Kurs>Übungsanweisungen
- Definiere eine
enum-Map, um instockByCategorydie Menge jederProductCategoryzu speichern. - Fasse die Mengen in
stockByCategoryzu Kategoriesummen zusammen.
Interaktive praktische Übung
Versuche dich an dieser Übung, indem du diesen Beispielcode vervollständigst.
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);
}
}