Mengelompokkan berdasarkan kategori terstandarisasi
Sekarang setelah Anda menstandarkan kategori inventaris elektronik Anda, Anda ingin menghitung kuantitas setiap kategori. Gabungkan jumlahnya ke dalam penjumlahan per kategori.
Latihan ini merupakan bagian dari kursus
Pembersihan Data di Java
Instruksi latihan
- Definisikan peta
enumuntuk menyimpan kuantitas setiapProductCategorydalamstockByCategory. - Gabungkan kuantitas ke dalam penjumlahan per kategori di
stockByCategory.
Latihan interaktif langsung praktik
Cobalah latihan ini dengan melengkapi kode contoh ini.
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);
}
}