首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > JAVA > J2SE开发 >

hashset不重复输出有关问题

2012-01-31 
hashset不重复输出问题publicstaticvoidmain(String[]args){FilefnewFile( c:\\新建文本文档.txt )Has

hashset不重复输出问题
public   static   void   main(String[]args){
File   f=new   File( "c:\\新建   文本文档.txt ");
HashSet   ddd=new   HashSet();
String   temp=null;
try{
BufferedReader   buffer=new   BufferedReader(new   FileReader(f));
while((temp   =   buffer.readLine())!=   null){
temp   =   temp.trim().substring(0,11);
ddd.add(temp);
System.out.println( "\nHashSet: ");
System.out.println(ddd);
Iterator   iterator=ddd.iterator();//取出元素
while(iterator.hasNext()){
System.out.print(iterator.next()+ "\n ");
}
}


111133333333
222233333333
444433333333
222233333333


会打出

HashSet:
[11113333333]
11113333333

HashSet:
[22223333333,   11113333333]
22223333333
11113333333

HashSet:
[44443333333,   22223333333,   11113333333]
44443333333
22223333333
11113333333

HashSet:
[44443333333,   22223333333,   11113333333]
44443333333
22223333333
11113333333
我想让他只打出最后一排数据     怎么改??谢谢

[解决办法]
不知道你想打出什么东西出来

public static void main(String[] args)
{
File f = new File( "c:\\a.txt ");
HashSet ddd = new HashSet();
String temp = null;
try
{
BufferedReader buffer = new BufferedReader(new FileReader(f));
while ((temp = buffer.readLine()) != null)
{
temp = temp.trim().substring(0, 11);
ddd.add(temp);
System.out.println( "\nHashSet: ");
//System.out.println(ddd);
Iterator iterator = ddd.iterator();//取出元素
while (iterator.hasNext())
{
System.out.print(iterator.next() + "\n ");
}
}
}
catch (Exception e)
{

}
}

从一开始就请把代码写规整点来。
[解决办法]
while循环弄清楚,存完了再输出

BufferedReader buffer = new BufferedReader(new FileReader(f));
while ((temp = buffer.readLine()) != null) {
temp = temp.trim().substring(0, 11);
ddd.add(temp);
}

System.out.println( "\nHashSet: ");
System.out.println(ddd);
[解决办法]
/*
我想这不算是一个HASHSET的问题,而是WHILE循环作用域的问题
*/

import java.io.*;
import java.util.*;

public class Csdn1321{
public static void main(String[] args) throws IOException{
File f = new File( "data ");
HashSet <String> ddd = new HashSet <String> (); //create a HashSet of Strings
String temp = null;

BufferedReader buffer = new BufferedReader(new FileReader(f));
while((temp = buffer.readLine())!=null){
temp = temp.trim().subString(0,11);
ddd.add(temp);
}

System.out.println( "\nHashSet: ");
System.out.println(ddd);
for(String s : ddd){
System.out.println(s);
}
}
}
[解决办法]
你的代码本来就没问题啊,可以过滤掉重复的记录啊。
------解决方案--------------------


while循环控制好,代码也贴过了,楼主怎么不看清楚呢
[解决办法]
torainer() 说的不就是你要的嘛,
好傻的问题
[解决办法]
up

热点排行