【发布时间】:2018-06-04 07:14:45
【问题描述】:
我正在尝试遍历 ArrayList 并想找出一个元素。列表中有数千个项目,因此需要花费大量时间才能找到。所以,任何人都可以建议高效快速的搜索。代码如下:
private FoodItem getFoodItem(List<FoodItem> foodItemList, String foodItemId) {
if (foodItemId == null || foodItemList == null || foodItemList.isEmpty()) {
return null;
}
for (FoodItem foodItem : foodItemList) {
if (foodItem == null) {
continue;
}
if (foodItem.getId().equals(foodItemId)) {
return foodItem;
}
}
return null;
}
【问题讨论】:
-
使用
Map<String,FoodItem>而不是List。 -
为什么不使用 HashMap?