Java List 如何传值

时间:2020-12-07 15:51:21
  1. // 合并 List 中的相同数据行
  2. // Source : tmpOrderEntryListBeanList
  3. // Target : resultOrderEntryListBeanList
  4. // ------------------------------------------------------------------
  5. // (1)将结果赋给 Result Livon 2010-5-18 三
  6. // 整理列表,以便查询库存。
  7. private List<OrderEntryListBean> setOrderEntryList(List<OrderEntryListBean> orderEntryListBeanList){
  8. // (1)将结果赋给 Result Livon 2010-5-18 三
  9. //List<OrderEntryListBean> resultList = orderEntryListBeanList;
  10. ArrayList<OrderEntryListBean> list = new  ArrayList<OrderEntryListBean>(orderEntryListBeanList);
  11. ArrayList<OrderEntryListBean> resultList = (ArrayList<OrderEntryListBean>) list.clone();
  12. int rdcID_i, rdcID_j ;
  13. int itemID_i, itemID_j ;
  14. double itemAmount_i, itemAmount_j = 0;
  15. // (2)从最后一行向上循环,直到第2条(如果存在的话)
  16. for(int i = resultList.size() - 1; i > 0; i--){
  17. rdcID_i  = Integer.valueOf(resultList.get(i).getRdcId());
  18. itemID_i = Integer.valueOf(resultList.get(i).getItemId());
  19. itemAmount_i = Double.valueOf(resultList.get(i).getAmount());
  20. // (3)从第一条,向下,直到外循环的倒数第2条。
  21. for(int j = 0; j < i ; j++){
  22. rdcID_j  = Integer.valueOf(resultList.get(j).getRdcId());
  23. itemID_j = Integer.valueOf(resultList.get(j).getItemId());
  24. itemAmount_j = Double.valueOf(resultList.get(j).getAmount());
  25. if(rdcID_i == rdcID_j && itemID_i == itemID_j ){
  26. resultList.get(j).setAmount( String.valueOf(itemAmount_i  + itemAmount_j));
  27. resultList.remove(i);
  28. break;
  29. }
  30. }
  31. }
  32. return resultList;
  33. }