如何在Java List中获取对象的索引

时间:2012-12-07 18:42:06

标签: java arraylist json

我正在尝试将数据添加到数组列表中。在这个结果

[{Store={id_store=2, namestore=Kupat Tahu Singaparna , product=[{id_product=1, price=100000, quantity=1}]}}]

你可以使用这段代码:

static ArrayList Storecart = new ArrayList(); 
LinkedHashMap store = new LinkedHashMap();
LinkedHashMap storeitem = new LinkedHashMap();
LinkedHashMap listproduct = new LinkedHashMap();
ArrayList prdct = new ArrayList(); 

storeitem.put("id_store",id_store);
storeitem.put("namestore",namestr ); 
listproduct.put("id_product", id_prodt);
listproduct.put("price",priced); 
listproduct.put("quantity", quantity); 

prdct.add(listproduct); 
storeitem.put("product", prdct);
store.put("Store", storeitem);
Storecart.add(store); 

我需要获取数组列表中对象的索引。问题是,我无法为“获取对象存储和对象产品”循环数组列表并查找每个索引..什么是最好的&有效的解决方案?

1 个答案:

答案 0 :(得分:1)

好吧,您可以使用List.indexOf(),正如其他人所建议的那样:

Java List API: indexOf()

如果你打算做很多事情,那么你可能会对你的对象引用有所了解。因此,您可以扩展/包装您希望索引的Object来跟踪其自己的索引。具体来说,您可以根据您第一次遇到它的顺序为对象分配索引。然后,集合中对象的顺序将无关紧要。

我想你也可以使用Map作为另一种可能性。然后只使用Map而不是ArrayList。

底线:如果您正在执行大量“indexOf()”请求,那么ArrayList可能不是您数据的最佳容器。