Java 排序集合/api

标签 java api list sorting package

我想知道哪种 API 或集合最适合用于使用扫描仪搜索文档,计算单词出现的次数并创建一个按字母顺序排列的列表,并为每个单词创建一个包含多少次的子列表它后面跟着另一个词。

这是一个类(class),所以请给我指出正确的方向,因为我对 Java 和包是全新的,但我不需要任何实际的编码技巧,谢谢。

最佳答案

我想你可以用 Map<String, Map<String, Integer>> 做类似的事情.本质上,您将拥有一个单词,它与包含所有连续单词及其频率(即它们出现的次数)的 map 相关联。所以你会得到的是:

Map<String, Map<String, Integer>> frequencyTable = new HashMap<String, Map<String, Integer>>();

为了排序,您可以创建一个包含单词及其频率的类。然后你可以使用 TreeSet使用比较器(或在您的类(class)上实现 compareTo)来强制执行排序。那么您的 map 将如下所示:

Map<String, TreeSet<Frequency>> frequencyTable = new HashMap<String, TreeSet<Frequency>>();

假设Frequency是保存有关字符串及其出现次数的信息的类。这里唯一的困难是每次需要更新它的频率时都要查找单词,因为您将不得不遍历集合。

关于Java 排序集合/api,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/11367478/

相关文章:

Java validator ?

php - 我应该避免使用 Laravel Breeze 并简单地将 Passport 用于我的 Laravel API 吗?还是我两个一起用?

node.js - 如何向 Heroku 添加 API key ?

python - 类型错误 : object supporting the buffer API required in flask api

list - 使用 Razor 获取所有文档类型 umbraco

java - 读取以 xx.5 结尾的整数和小数的正则表达式

java.lang.ClassCastException : android.graphics.drawable.ColorDrawable无法转换为android.graphics.drawable.BitmapDrawable

java - 从 JAR 文件加载属性 (java 1.6)

c# - 将列表中的值与另一个列表中的特定总和进行比较的最快方法是什么?

java - 从链表数组中提取链表