课程咨询 :18487146383

昆明Java培训 > 达内新闻 > 手动去除集合中重复元素
  • 手动去除集合中重复元素

    发布:昆明Java培训      来源:达内新闻      时间:2016-12-30

  • 昆明Java培训的小编分享手动去除集合中重复元素。

    原理:创建另一个集合,遍历判断接收原集合中不重复的元素

    1 import java.util.ArrayList;

    2 import java.util.ListIterator;

    3

    4 public class test {

    5

    6    public static void main(String[] args) {

    7        test();

    8    }

    9    

    10    public static void test(){

    11        ArrayList<String> list = new ArrayList<String>();

    12        list.add("1");

    13        list.add("2");

    14        list.add("3");

    15        list.add("8");

    16        list.add("2");

    17        list.add("4");

    18        list.add("3");

    19        

    20        list.trimToSize(); //调整当前集合容量的大小

    21        System.out.println("原始集合元素:"+list);

    22        

    23        clearRepeear(list); //调用方法,传入集合

    24    }

    25    

    26    //原理创建另一个集合,接收不重复的元素(两种方法)

    27    public static void clearRepeear(ArrayList<String> list){

    28        

    29        //(1)for循环形式,判断是否包含,不包含就添加

    30        ArrayList<String> newList = new ArrayList<String>();

    31        

    32        for(int i = 0 ; i < list.size();i++){

    33            

    34            if(!newList.contains(list.get(i))){

    35                newList.add(list.get(i));

    36            }

    37        }

    38        System.out.println("for循环:"+newList);

    39

    40        

    41        //(2)迭代器形式

    42        ArrayList<String> newList2 = new ArrayList<String>();

    43        ListIterator<String> it = list.listIterator();

    44        while(it.hasNext()){

    45            //next()获取到的是集合里的对象

    46            Object obj = it.next(); //将元素赋给一个对象

    47            if(!newList2.contains(obj)){ //判断不包含就添加

    48                newList2.add((String)obj);   //将对象转为字符串添加到集合中

    49            }

    50        }

    51        System.out.println("迭代器:"+newList2);

    52    }

    53

    54 }

    推荐文章

上一篇:Java 7之基础

下一篇:手动去除集合中重复元素

最新开班日期  |  更多

Java--零基础全日制班

Java--零基础全日制班

开班日期:4月28日

Java--零基础业余班

Java--零基础业余班

开班日期:4月28日

Java--周末提升班

Java--周末提升班

开班日期:4月28日

Java--零基础周末班

Java--零基础周末班

开班日期:4月28日

  • 网址:http://km .java.tedu.cn      地址:昆明市官渡区春城路62号证券大厦附楼6楼
  • 课程培训电话:18487146383    全国服务监督电话:400-111-8989
  • 服务邮箱 ts@tedu.cn
  • 2001-2016 达内时代科技集团有限公司 版权所有 京ICP证8000853号-56