mirror of
https://github.com/Snailclimb/JavaGuide
synced 2025-06-16 18:10:13 +08:00
[fix]枚举那篇文章的EnumMap的groupPizzaByStatus方法有问题
This commit is contained in:
parent
df3cbb65dc
commit
733193324f
@ -257,23 +257,18 @@ EnumMap<Pizza.PizzaStatus, Pizza> map;
|
||||
让我们快速看一个真实的示例,该示例演示如何在实践中使用它:
|
||||
|
||||
```java
|
||||
public static EnumMap<PizzaStatus, List<Pizza>>
|
||||
groupPizzaByStatus(List<Pizza> pizzaList) {
|
||||
EnumMap<PizzaStatus, List<Pizza>> pzByStatus =
|
||||
new EnumMap<PizzaStatus, List<Pizza>>(PizzaStatus.class);
|
||||
|
||||
for (Pizza pz : pizzaList) {
|
||||
Iterator<Pizza> iterator = pizzaList.iterator();
|
||||
while (iterator.hasNext()) {
|
||||
Pizza pz = iterator.next();
|
||||
PizzaStatus status = pz.getStatus();
|
||||
if (pzByStatus.containsKey(status)) {
|
||||
pzByStatus.get(status).add(pz);
|
||||
} else {
|
||||
List<Pizza> newPzList = new ArrayList<Pizza>();
|
||||
List<Pizza> newPzList = new ArrayList<>();
|
||||
newPzList.add(pz);
|
||||
pzByStatus.put(status, newPzList);
|
||||
}
|
||||
}
|
||||
return pzByStatus;
|
||||
}
|
||||
```
|
||||
|
||||
下面的测试演示了展示了 `EnumMap` 在某些场景下的强大功能:
|
||||
|
Loading…
x
Reference in New Issue
Block a user