List入库,把List1中的数据入库到List2中
来源:互联网 发布:python 列表推导式 编辑:程序博客网 时间:2024/05/01 09:38
如题:把List1中的数据入库到List2中,假设包含两个元素,商品名和商品数量
规则:List2中已存在你的商品,直接修改数量;List2中不存在的商品,把List1中的直接复制到List2
在论坛上看了这道题,就跟着楼主的思路走了:先把List1中的商品按同种类的统计出来,然后再合并到List2中,
然后写了很多的代码,最后回到论坛一看,,,直接把List1逐一合并到List2 中不就行了吗??何必多此一举呢,
这样代码还能节省好多。
以后要自己动脑,先考虑好了再下手,不然就会走岔路了,吃力不讨好
import java.util.ArrayList;import java.util.List;/** * 把a1中的数据合并到a2中 * a2中已存在相同name的数据,合并数量,不存在相同name的数据,把a1中的数据复制到a2中 * @author yuxiang0728 * */class Product2 {protected String item_name;protected int num;public Product2() {}public Product2(String na, int num) {this.item_name = na;this.num = num;}public String show() {return ("商品名称 :" + this.item_name + "\t数量:" + this.num + "\r\n");} }public class Product_in2 extends Product2 {private String item_person;public Product_in2(String name, String Person, int num) {this.item_name = name;this.item_person = Person;this.num = num;}public String getItem_person() {return item_person;}public void setItem_person(String item_person) {this.item_person = item_person;}public String show() {return ("商品名称 :" + this.item_name + "\t数量:" + this.num + "\t操作人 :"+ this.item_person + "\r\n");}public static void main(String[] args) {transInfo();}public static void transInfo() {// 给a2归类存在问题List<Product_in2> a1=new ArrayList<Product_in2>(); //a1的定义a1.add(new Product_in2("商品A","test",3));a1.add(new Product_in2("商品A","test",4));a1.add(new Product_in2("商品A","test",7));a1.add(new Product_in2("商品B","test",5));a1.add(new Product_in2("商品B","test",8));a1.add(new Product_in2("商品C","test",6));List<Product2> a2 = new ArrayList<Product2>();//a2的定义a2.add(new Product2("商品R",1));a2.add(new Product2("商品A",1));System.out.println("-------------初始-a1-------------------");for (int i = 0; i < a1.size(); i++) {System.out.println(a1.get(i).show());}System.out.println("-------------初始-a2------------------");for (int i = 0; i < a2.size(); i++) {System.out.println(a2.get(i).show());}for (int i = 0; i < a1.size(); i++) {boolean flag = false;for (int j = 0; j < a2.size(); j++) {if(a2.get(j).item_name.equals(a1.get(i).item_name)){a2.get(j).num += a1.get(i).num;flag = true;break;}}if(!flag){a2.add(new Product2(a1.get(i).item_name,a1.get(i).num));}}System.out.println("-------------合并 a1——>a2 ------------------");for (int i = 0; i < a2.size(); i++) {System.out.println(a2.get(i).show());}}}
阅读全文
0 0
- List入库,把List1中的数据入库到List2中
- Hive 数据入库到HBase
- 判断list1中是否包含list2元素
- 判断list1中是否包含list2元素
- 把csv入库到hadoop集群
- 入库
- 股票数据自动入库hive到oracle
- 微博数据入库到sqlserver
- 监听器监听日志,实时读取日志文件,把读取到的数据入库
- 怎样把数据库中的数据按入库顺序倒排序显示出来
- Java基本方法——String数组转List,删除List1中与List2中相同的元素
- ASP批量导入EXCEL中数据入库
- list1.removeAll(list2);
- DWG数据的入库
- 栅格数据入库
- 栅格数据入库
- 异地mongodb数据入库
- 数据入库代码
- Lua 文件 I/O (读取文件路径注意)
- 发送邮件分类
- 世界十大哲学难题
- 简单排序算法时间空间复杂度分析及应用(4)-二分插入排序
- zookeeper shell 命令
- List入库,把List1中的数据入库到List2中
- layout_gravity 和 gravity 并且 layout_alignRigh和layout_toRightOf
- CSDN日报20170620——《找一个好工作,谈一份好薪水》
- Ubuntu 14.04 opencv 2.4.9 安装
- 第七篇 定义类成员
- 入门篇(1)使用Python对NAO机器人编程
- linux驱动程序
- java远程登陆linux服务器,执行命令获取命令显示
- Spark Streaming中的操作函数分析