我有一个 MyObjects 的数组列表,我想根据我的对象的标题值在其中拆分我的列表。例如
List<MyProduct> productList = instance.getMyProductList();
这是我的清单,其中包含许多产品。
product = productList.get(i);
String tittle = product.getTitle();
我想将我的数组列表拆分成几个具有相似产品标题的列表。
请告诉我。谢谢。
与番石榴:
ListMultimap<String, MyProduct> result = Multimaps.index(productList, new Function<String, Product>() {
@Override
public String apply(Product input) {
return input.getTitle();
}
});
使用普通的旧 Java 集合:
Map<String, List<MyProduct>> result = new HashMap<>();
for (MyProduct p : productList) {
List<MyProduct> list = result.get(p.getTitle());
if (list == null) {
list = new ArrayList<>();
result.put(p.getTitle(), list);
}
list.add(p);
}
两者都假设“相似”标题实际上是“相等”标题。