У меня проблема, так как у меня есть список продуктов, который содержит несколько типов, однако я хочу показать общие данные, но они были повторены в списке, теперь я могу заставить их существовать только один раз, но проблема в том, что когда я хочу установить результат, когда элемент уже существует в моем Ha sh, он не выполняет этот набор, я не знаю, связан ли он с мелкой копией Java, я пробовал Cloneable, но это не удалось.
@RequiresApi(api = Build.VERSION_CODES.N)
public List<ProductsAlmacenInfo> getProductsTotal() {
HashMap<Long, ProductsAlmacenInfo> map = new HashMap<Long, ProductsAlmacenInfo>();
for (ProductsAlmacenInfo x: products) {
ProductsAlmacenInfo temp = x;
if(map.containsKey(x.getId_product().toString()) && (x.getStock_type().contentEquals("VTA") ||
x.getStock_type().contentEquals("VDO") || x.getStock_type().contentEquals("CHG"))) {
temp.setQty(Math.abs(x.getQty()+1));
map.replace(temp.getId_product(), temp);
}
else if (!map.containsKey(x.getId_product().toString())) {
temp.setQty(Math.abs(x.getQty()));
map.put(x.getId_product(), temp);
}
}
List<ProductsAlmacenInfo> productsTemp = new ArrayList<ProductsAlmacenInfo>(map.values());
if(productsTemp.isEmpty()) return products;
return productsTemp;
}[enter image description here][1]