`
tiramisu110
  • 浏览: 24409 次
  • 性别: Icon_minigender_1
  • 来自: 广州
社区版块
存档分类
最新评论

List合并去除其中的相同项

阅读更多

public static void main(String[] args) {
        // 第一种:List每remove掉一个元素以后,
        // 后面的元素都会向前移动,此时如果执行i=i+1,
        // 则刚刚移过来的元素没有被读取。
        Entity sbo1 = new Entity ();
        sbo1.setGifId("1");
        sbo1.setGiftName("kell");
        sbo1.setGiftAmout(11);
        sbo1.setGiftUnit("aaa");
        SchdGiftUsageBO sbo2 = new SchdGiftUsageBO();
        sbo2.setGifId("2");
        sbo2.setGiftName("kell");
        sbo2.setGiftAmout(22);
        sbo2.setGiftUnit("aaa");
        List<SchdGiftUsageBO> list = new ArrayList<SchdGiftUsageBO>();
        list.add(sbo1);
        list.add(sbo2);

        Entity sbo3 = new Entity ();
        sbo3.setGifId("3");
        sbo3.setGiftName("kell");
        sbo3.setGiftAmout(11);
        sbo3.setGiftUnit("aaa");
        Entity sbo4 = new Entity ();
        sbo4.setGifId("4");
        sbo4.setGiftName("kell");
        sbo4.setGiftAmout(11);
        sbo4.setGiftUnit("aaa");
        List<Entity > list2 = new ArrayList<Entity >();
        list2.add(sbo1);
        list2.add(sbo3);
        list2.add(sbo4);

        System.out.println("list.size()=" + list.size());
        // 每移除一个元素以后再把i移回来
        for (int i = 0; i < list.size(); i++) {
            System.out.println(list.get(i).getGifId());
            if (((String) list.get(i).getGifId()).contains(list2.get(i).getGifId())) {
                list.remove(i);
                i--;
            }
        }
       
        System.out.println("after remove:list.size()=" + list.size());

    }

分享到:
评论

相关推荐

    VBA常用技巧

    15-3合并内容相同的连续单元格52 15-4取消合并单元格时在每个单元格中保留内容54 技巧16高亮显示单元格区域55 技巧17双击被保护单元格时不显示提示消息框56 技巧18重新计算工作表指定区域58 技巧19录入数据后单元格...

    VBA编程技巧大全

    15-3 合并内容相同的连续单元格 54 15-4 取消合并单元格时在每个单元格中保留内容 56 技巧16 高亮显示单元格区域 57 技巧17 双击被保护单元格时不显示提示消息框 58 技巧18 重新计算工作表指定区域 60 技巧19 录入...

    P2P视频技术源码(VC)

    free_config, 参数为和read_config相同的struct NamVal *以及项数 2) mysql 模块 mysql模块主要有MYSQL *local_mysql以及三个函数构成, 这三个函数是 init_mysql, 初始化mysql, 返回一个MYSQL *, 一般用来初始化...

    P2P视频播放器 详细制作实例

    free_config, 参数为和read_config相同的struct NamVal *以及项数 2) mysql 模块 mysql模块主要有MYSQL *local_mysql以及三个函数构成, 这三个函数是 init_mysql, 初始化mysql, 返回一个MYSQL *, 一般用来初始化...

    C#编程经验技巧宝典

    85 &lt;br&gt;0131 巧截字符串的数字 86 &lt;br&gt;0132 如何存储变长字符串 86 &lt;br&gt;0133 在进行字符串比较时忽略大小写 87 &lt;br&gt;0134 如何去除字符串尾空格 87 &lt;br&gt;0135 如何去掉字符串中所有空格 ...

    oracle学习文档 笔记 全面 深刻 详细 通俗易懂 doc word格式 清晰 连接字符串

    n(-84~127) 可以存储正数、负数、零、定点数和精度为38位的浮点数,其中,M表示精度,代表数字的总位数;N表示小数点右边数字的位数 日期类型 date 7字节 用于存储表中的日期和时间数据,取值范围是公元前4712年1月...

    Oracle9i的init.ora参数中文说明

    并确保在同一事务处理种对相同数据的两次查询看到的是相同的值。 值范围: TRUE | FALSE 默认值: FALSE row_locking: 说明: 指定在表已更新或正在更新时是否获取行锁。如果设置为 ALWAYS, 只有在表被更新后才获取...

    arcgis工具

    Merge,把多个图斑合并到其中一个图斑上并继承它的属性,原图斑变化;Split用于间断线段,但得知道具体的长度,如果不知道那么长度或者没必要那么精确就直接用Eeitor工具栏的Split tool工具 ) 11. 连接外界属性...

    Java开发实战1200例(第1卷).(清华出版.李钟尉.陈丹丹).part3

    每个实例都是经过笔者精心筛选的,具有很强的实用性,其中一些实例是开发人员难于寻觅的解决方案。 本书两卷共计1200个例子,包括了开发中各个方面最常用的实例,是目前市场上实例最全面的开发类图书;本书实例来源...

Global site tag (gtag.js) - Google Analytics