zoukankan      html  css  js  c++  java
  • 关于List对象的重复项清除和倒序处理

    List对象是Android开发中需要常用到的一个东东。

    private List<String> li = null;
    li.add("abc");
    li.add("123");
    li.add("def");
    li.add("123");
    li.add("xyz");
    for (int i=0; i<li.size()-1; i++){
    System.out.println(li.get(i));
    }

    然后就可以将li中的条目逐一输出出来了:(“abc”, “123”, “def”, “123”, “xyz”)

    如果想剔除li中重复的item,则可以通过如下函数实现:

        public static List<String> removeDuplicateWithOrder(List<String> list) {
    Set<Object> set = new HashSet<Object>();
    List<String> newList = new ArrayList<String>();
    // list = reverseList(list);
    for (Iterator<String> iter = list.iterator(); iter.hasNext();) {
    Object element = iter.next();
    if (set.add(element))
    newList.add(element.toString());
    }
    // newList = reverseList(newList);
    return newList;
    }

    通过调用上面的函数:private List<String> li2 = removeDuplicateWithOrder(li),然后通过一个循环输出li2的items:
    (“abc”, “123”, “def”, “xyz”)

    如果想要倒序剔除,则还需要一个倒序函数:

        public static List<String> reverseList(List<String> list) {
    List<String> revList = new ArrayList<String>();
    for(int i=list.size()-1; i>=0; i--){
    revList.add(list.get(i));
    }
    return revList;
    }

    测试的时候,将removeDuplicateWithOrder中的两行注释放开就可以了,然后输出序列为:(“abc”, “def”, “123”, “xyz”)
    即先倒序删除重复的,然后再次倒序回来。

  • 相关阅读:
    HTML5存储
    HTML5 地理位置定位(Geolocation)原理及应用
    HTML5多媒体组件的使用
    HTML5拖拽
    HTML5一些总结
    js高级程序设计--数据类型
    JS高级程序设计基本概念
    浏览器内核、渲染引擎、js引擎
    JS高级程序设计笔记之script标签
    CenOS7下安装 nginx
  • 原文地址:https://www.cnblogs.com/wzc0066/p/2948252.html
Copyright © 2011-2022 走看看