我正在尝试编写一个程序,它接受一个文本文件作为输入,检索单词,并输出每个单词与它们所在的每个行号。我在这个项目中遇到了很多麻烦,尽管我已经取得了一些进展......
到目前为止,我有一个ArrayList
,其中包含文档中找到的所有单词,没有标点符号。我可以输出这个列表并查看文本文件中的所有单词,但我不知道从哪里开始......有什么想法吗?
示例:
myList = [A, ACTUALLY, ALMOST,....]
我需要以某种方式将每个单词与它们来自哪一行相关联,这样我就可以填充一个数据结构,该结构将每个单词及其相关的行号保存。
我是编程新手所以我不熟悉所有类型的数据结构和算法...我的教师建议我使用动态多链接列表但我不知道如何实现那些经文ArrayLists和数组。
任何想法都将不胜感激。谢谢!
答案 0 :(得分:3)
您应该使用哈希表。哈希表是键/值对。键可以是文本文件中的每个单词,值,包含行号的数组列表。
基本上,遍历文本文件中的每个单词。如果该单词不在您的单词列表中,请将其作为键和行号作为列表中的值添加到哈希表中。如果该单词已在表中,请将行号附加到数组列表中。
Java在哈希表here
上有很好的文档为您提供所需的方法。