编写一个名为printDuplicates的静态方法,它接受作为其 参数的扫描器作为包含一系列行的输入文件。 您的方法应该检查每条线在同一行上查找连续的 相同标记的出现次数,并将每个 重复的标记连同其连续出现的次数一起打印出来。 未重复的令牌未打印。重复多行 (例如,如果一行以给定的标记结束,并且下一行以相同的标记开始 )在此问题中未考虑。Java - 重复检测
例如,如果输入文件包含以下文本(序列复制令牌 有下划线表示强调):
hello how how are you you you you I I I am Jack's Jack's smirking smirking smirking smirking smirking revenge bow wow wow yippee yippee yo yippee yippee yay yay yay one fish two fish red fish blue fish It's the Muppet Show, wakka wakka wakka
你的方法会产生对前述输入 文件以下输出:
how*2 you*4 I*3 Jack's*2 smirking*5 wow*2 yippee*2 yippee*2 yay*3 wakka*3
我现在在java中的代码如下,这是不工作,我想知道为什么。如果有人能够帮助这将是伟大的,谢谢:)
import java.io.*;
import java.util.*;
public class What {
public static void main(String[] args) throws Exception {
String word = "";
String word2 = "";
Scanner input = new Scanner(new File("what.txt"));
while(input.hasNextLine()) {
Scanner line = new Scanner(input.nextLine());
int repeat = 1;
word = line.next();
while(line.hasNext()) {
word2 = line.next();
while(word.equals(word2) && line.hasNext()) {
word = word2;
word2 = line.next();
repeat++;
}
if(repeat!=1) {
System.out.print(word + "*" + repeat + " ");
}
word = word2;
}
System.out.println();
}
}
}
what.txt包含以下内容:
hello how how are you you you you I I I am Jack's Jack's smirking smirking smirking smirking smirking revenge bow wow wow yippee yippee yo yippee yippee yay yay yay one fish two fish red fish blue fish It's the Muppet Show, wakka wakka wakka
和输出现在的问题是:
how*2 are*2 you*4
I*3 am*3 jack's*4 smirking*7
wow*2 yippee*3 yo*3 yippee*4 yay*5
wakka*2
为什么它没有解决?目前的产量是多少?获取任何错误?如果您需要帮助,您需要提供这些信息。 – Thihara
是否确定what.txt存在并且有数据? – codeMan
what.txt包含以下内容:你好,你怎么样你你你 III是杰克的杰克的奸笑奸笑奸笑奸笑奸笑报复 弓哇哇YIPPEE YIPPEE 哟YIPPEE YIPPEE耶耶耶 一条鱼两条鱼红色的鱼蓝色的鱼 这是Muppet Show,wakka wakka wakka – Ponnnnn