我有一个产品的 ArrayList,每个产品都有一个类别作为属性(因此每个类别可以有很多产品)。我只需要格式化数据,以便根据类别属性对产品进行分类。
我认为 HashMap 会很有用,因为我可以只使用类别作为键,使用产品的 ArrayList 作为值。
如果这是正确的方法,有人可以帮助我将我的 ArrayList 转换为 HashMap 所涉及的逻辑,正如我所描述的那样?或者也许有更好的方法来处理它。
/** 更新 **/
这是一个示例方法,但我不确定如何使逻辑发生:
private HashMap<String, ArrayList> sortProductsByCategory (ArrayList<Product> productList) {
// The hashmap value will be the category name, and the value will be the array of products
HashMap<String, ArrayList> map;
for(Product product: productList) {
// If the key does not exist in the hashmap
if(!map.containsKey(product.getCategory()) {
// Add a key to the map, add product to new arraylist
}
else {
// add the product to the arraylist that corresponds to the key
}
return map;
}
}