A股上市公司传智教育(股票代码 003032)旗下技术交流社区北京昌平校区

© liupanpan 中级黑马   /  2015-9-30 22:44  /  290 人查看  /  2 人回复  /   0 人收藏 转载请遵从CC协议 禁止商业使用本文

package com.liupanpan.test;

import java.util.ArrayList;
import java.util.LinkedHashSet;

public class Test3 {

        /**
         *需求:将集合中的重复元素去掉,并且按照集合存入的顺序打印出来
         *分析
         *1,因为要求存取有序所以需要创建一个List集合并且向集合中添加字符串
         *2,因为需要将List集合中重复的元素去掉所以需要创建一个Set集合,但是还要求去除重复的元素以后需要按照List集合存入的顺序打印出来所以需要创建一个
         *LinkedHashSet集合,因为只有这一个集合可以保证元素不重复并且存取有序
         *3,将List集合中的元素全部添加到LinkedHashSet集合中
         *4,清除List集合中的元素
         *5,将LinkedHashSet集合中的元素全部添加到List集合中
         *
         */
        public static void main(String[] args) {
                ArrayList<String> list = new ArrayList<String>();
                list.add("a");
                list.add("a");
                list.add("bb");
                list.add("bb");
                list.add("heima");
                list.add("lichen");
                list.add("cc");
                list.add("cc");
                list.add("liminhao");
                list.add("liminhao");
                getSingle(list);
                System.out.print(list);
        }

         
        public static void getSingle(ArrayList<String> list) {
       
                LinkedHashSet<String> lhs = new LinkedHashSet<String>();
                 
                        lhs.addAll(list);
                        list.clear();
                        list.addAll(lhs);
                 
        }

}
/*所涉及的知识点
* 1,addAll()将另一个集合中的元素全部添加到集合中
* 2,clear()清除集合中的全部元素
* 3,LinkedHashSet集合是唯一一个即可以保证集合中的元素不重复又存取有序的集合
*/


2 个回复

倒序浏览
哎呦,不错哦
回复 使用道具 举报
赞            
回复 使用道具 举报
您需要登录后才可以回帖 登录 | 加入黑马