gpt4 book ai didi

java - 如何在不计算 java 文件中的原始单词的情况下查找重复单词?

转载 作者:行者123 更新时间:2023-11-30 10:50:42 24 4
gpt4 key购买 nike

 import java.io.BufferedReader;   
import java.io.File;
import java.io.FileInputStream;
import java.io.FileNotFoundException;
import java.io.FilenameFilter;
import java.io.IOException;
import java.io.InputStreamReader;
import java.util.ArrayList;
import java.util.Arrays;
import java.util.Collections;
import java.util.HashSet;
import java.util.List;
import java.util.Set;
import org.apache.commons.io.FileUtils;
public class sample{
public static void main(String[] args) throws FileNotFoundException, IOException {

FilenameFilter filter = new FilenameFilter() {
public boolean accept(File dir, String name) {
return name.endsWith(".txt");
}
};

File folder = new File("E:\\testfolder\\");
File[] list Of Files = folder.listFiles(filter);

for (int i = 0; i < list Of Files.length; i++) {
File file1 = list Of Files[i];
try {
String content = FileUtils.readFileToString(file1);

} catch (IOException e) {

e.printStackTrace();
}

BufferedReader ins = null;
try {
ins = new BufferedReader (
new InputStreamReader(
new FileInputStream(file 1)));
} catch (FileNotFoundException e) {

e.printStackTrace();
}

String message = org.apache.commons.io.IOUtils.toString(ins);
String[] string array = message.split(" ");
List<String> list = new ArrayList<String>(Arrays.asList(string array));
// System.out.println("Repeated words found in the file");
Set<String> unique Set = new HashSet<String>(list);
for (String temp : unique Set) {
if ( (Collections.frequency(list, temp)) >= 2 ){
System.out.println(temp+"="+Collections.frequency(list, temp));
// System.out.println(temp);
int occurrences = Collections.frequency(list, 2);

}
}
}}}

到目前为止我试过了,但我无法得到我的输出这是我的逻辑。

这些是文件中的字符串或单词。公羊公羊公羊山姆山姆男人男人

在这个例子中,ram sam man 这些是原始词。剩下的 ram、ram、sam、sam、man 是重复的词,也就是重复的词。所以总字数为 8重复单词总数为 5剩余单词总数为 3。

但是我得到的输出是重复词数=3(ram=3,sam=3,man=2)

这是我上面的代码我是java的初学者。欢迎提出任何建议。:)

最佳答案

Collections.frequency(list, temp) - 1 

代替

Collections.frequency(list, temp)

在网上研究一下collections.frequency你就可以得到答案

关于java - 如何在不计算 java 文件中的原始单词的情况下查找重复单词?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/34985490/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com