第一次来这里提问,是个刚刚学习java的菜鸟,希望得到您的帮助
下面的这个程序不知道为什么运行不出来 用的是eclipse,多谢package day607;
import java.util.*;
public class TestSet { public static void main(String[] args) {
Set<String> words=new HashSet<String> ();
long totalTime=0;
Scanner in=new Scanner(System.in);
while(in.hasNext()){
String word=in.next();
long callTime=System.currentTimeMillis();
words.add(word);
callTime=System.currentTimeMillis()-callTime;1
totalTime+=callTime;
}
Iterator<String> iter=words.iterator();
for(int i=1;i<=20;i++){
System.out.println(iter.next());
System.out.println("....................................................");
System.out.println(words.size()+"distinct words."+totalTime+"milliseconds");
} }}
下面的这个程序不知道为什么运行不出来 用的是eclipse,多谢package day607;
import java.util.*;
public class TestSet { public static void main(String[] args) {
Set<String> words=new HashSet<String> ();
long totalTime=0;
Scanner in=new Scanner(System.in);
while(in.hasNext()){
String word=in.next();
long callTime=System.currentTimeMillis();
words.add(word);
callTime=System.currentTimeMillis()-callTime;1
totalTime+=callTime;
}
Iterator<String> iter=words.iterator();
for(int i=1;i<=20;i++){
System.out.println(iter.next());
System.out.println("....................................................");
System.out.println(words.size()+"distinct words."+totalTime+"milliseconds");
} }}
当然没有输出结果啊
long totalTime = 0; Scanner in = new Scanner(System.in);
while (in.hasNext()) {
String word = in.next();
//要有个标记退出循环,不然就出不去了
if("exit".equalsIgnoreCase(word))
break;
long callTime = System.currentTimeMillis();
words.add(word);
callTime = System.currentTimeMillis() - callTime;
totalTime += callTime;
}
Iterator<String> iter = words.iterator();
//是这样循环Set的,也可以用其他2种方式
while(iter.hasNext()){
System.out.println(iter.next());
System.out.println("....................................................");
}
System.out.println(words.size() + " distinct words. " + totalTime
+ " milliseconds");
}
}
感觉你是这个意思
不过刚刚修改时候加入 if("bye".equals(word)) break;后又抛出了java.util.NoSuchElementException的异常,为什么呢