如何合并两个列表<Map<String,Object>>

how to combine two List<Map<String,Object>>

java

中有这两个List>

List> voListResult = new ArrayList>();

voListResult:

[{product_idx=1, likecheck=0, product_price=25000,  product_title=크롭트 가디건}, 
{product_idx=2, likecheck=0, product_price=25000, product_title=크롭트 가디건}, 
{product_idx=3, likecheck=0, product_price=25000,  product_title=크롭트 가디건}, 
{product_idx=4, likecheck=0, product_price=25000,  product_title=크롭트 가디건}, 
{product_idx=5, likecheck=0, product_price=25000,  product_title=크롭트 가디건}, 
{ product_idx=6, likecheck=0, product_price=25000, , product_title=크롭트 가디건},
 {product_idx=7, likecheck=0, product_price=25000,  product_title=크롭트 가디건}, 
{product_idx=8, likecheck=0, product_price=25000,  product_title=크롭트 가디건}, 
{product_idx=9, likecheck=0, product_price=25000,  product_title=크롭트 가디건}]

List> productLikeRenew = likeDAO.SumProductLike();

productLikeRenew:

[{product_idx=3, likecheck=2}, {product_idx=10, likecheck=2},
{product_idx=12, likecheck=1}, {product_idx=5, likecheck=1},
{product_idx=7, likecheck=1}, {product_idx=11, likecheck=1},
{product_idx=13, likecheck=1},{product_idx=20, likecheck=1},
{product_idx=30, likecheck=1},{product_idx=40, likecheck=1}, 
{product_idx=59, likecheck=1}]

如何根据 voListResult 中两个列表的 product_idx 更新 likecheck?

结果:

[{product_idx=1, likecheck=0, product_price=25000,  product_title=크롭트 가디건}, 
{product_idx=2, likecheck=0, product_price=25000, product_title=크롭트 가디건}, 
{product_idx=3, likecheck=2, product_price=25000,  product_title=크롭트 가디건}, 
{product_idx=4, likecheck=0, product_price=25000,  product_title=크롭트 가디건}, 
{product_idx=5, likecheck=0, product_price=25000,  product_title=크롭트 가디건}, 
{ product_idx=6, likecheck=0, product_price=25000, , product_title=크롭트 가디건},
 {product_idx=7, likecheck=1, product_price=25000,  product_title=크롭트 가디건}, 
{product_idx=8, likecheck=0, product_price=25000,  product_title=크롭트 가디건}, 
{product_idx=9, likecheck=0, product_price=25000,  product_title=크롭트 가디건},
{product_idx=10, likecheck=2, product_price=25000,  product_title=크롭트 가디건}
...]

想了几天,还是不行

您可以做以下事情:-

  1. 根据 product_idx 编号对两个地图列表进行排序。
  2. 为 productLikeRenew 定义一个计数器并用 0 初始化。
  3. 迭代 voListResult 列表直到 product_idx of voListResult <= product_idx of productLikeRenew。
  4. 如果product_idx两者相等则合并结果。
  5. 增加计数器。
  6. 重复步骤 3 到 5,直到列表之一结束。