码迷,mamicode.com
首页 > 编程语言 > 详细

Java的ArrayList 无法去除重复,采用HashSet

时间:2016-05-14 17:09:26      阅读:334      评论:0      收藏:0      [点我收藏+]

标签:java   遍历   hashset   去重复   

ArrayList 只能对一次读入到内存中的所有对象 用contains方法去判断,从而去除重复。

List<String> seqId = new ArrayList<String>();
for (int i = 0; i < AllLines.length; i++) {
            String[] eachLine = AllLines[i].split("[\t]");
            //System.out.println(eachLine[0]);
            if (!seqId.contains(eachLine[0]))  {
                seqId.add(eachLine[0]);
            }
}


HashSet 可以去除重复;

而且要指定对象类型, 

HashSet<String> seqIdSet = new HashSet<String>();
Iterator<String> IdS = seqIdSet.iterator();
while(IdS.hasNext()){
            String tmpID = IdS.next();
            String tmp = new String(tmpID);
            String eachIDInSet = tmp.substring(0,tmp.indexOf("."));
            System.out.println("......"+eachIDInSet);
            System.out.println(eachIDInSet);
}

而且Iterator 只能生成一次迭代对象,不能重复使用。

Iterator<String> IdS = seqIdSet.iterator(); // 这一句如果不指定 <String> 这种类型的对象,
后面的String tmpID = IdS.next(); 就要改为 Object tmpID = IdS.next();

需导入的java类如下:

/** import java.io.File;
import java.io.FileInputStream;
import java.io.FileReader;
import java.io.IOException;
import java.io.BufferedReader;
import java.util.Scanner; */
import java.util.Iterator;
import java.util.HashMap;
import java.util.Set;
import java.util.HashSet;
import java.util.ArrayList;
import java.util.List;


本文出自 “R语言学习历程” 博客,请务必保留此出处http://matrix6ro.blog.51cto.com/1746429/1773312

Java的ArrayList 无法去除重复,采用HashSet

标签:java   遍历   hashset   去重复   

原文地址:http://matrix6ro.blog.51cto.com/1746429/1773312

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!