在java中导入和比较两个文本文件

在java中导入和比较两个文本文件,java,list,input,comparison,Java,List,Input,Comparison,我正在用java导入两个文本文件,一个包含多个杂货清单,另一个包含我不想要的杂货清单 我需要把各种杂货清单分开,扫描每一张清单,看看是否有我不想要的东西。如果一张购物清单包含一个或多个禁止列表上的项目,我需要将此购物清单移动到一个垃圾文件夹,但不包含任何单词的列表必须保留。因此,我需要逐个检查每个列表 我不知道如何把购物清单分开,以便分开检查。我也不知道如何对照其他杂货店的清单检查进口的禁止清单 谢谢 列表由“Finish”一词分隔,该词作为列表的最后一行出现。我使用了一个分隔符,将Finish

我正在用java导入两个文本文件,一个包含多个杂货清单,另一个包含我不想要的杂货清单

我需要把各种杂货清单分开,扫描每一张清单,看看是否有我不想要的东西。如果一张购物清单包含一个或多个禁止列表上的项目,我需要将此购物清单移动到一个垃圾文件夹,但不包含任何单词的列表必须保留。因此,我需要逐个检查每个列表

我不知道如何把购物清单分开,以便分开检查。我也不知道如何对照其他杂货店的清单检查进口的禁止清单

谢谢


列表由“Finish”一词分隔,该词作为列表的最后一行出现。我使用了一个分隔符,将Finish设置为我的模式,但我不知道这是否有效。我知道如果我输出它们,它会从物理上分离列表,但我不知道这是否会使它们分离出我可以单独扫描的实体。

我不知道杂货店列表的格式,因此我无法帮助您分离它们。如果列表以空行分隔,则在调用readLine()时,如果返回值为空(),则启动一个新列表

至于比较这两个列表,我会将禁止列表中的每个项目放入禁止的哈希集,当阅读新的杂货店列表时,如果您阅读的任何项目也在哈希集中,则会将列表丢弃

我在这里选择了一个哈希集,因为列表中的每个项目都将重复O(1),总插入量为O(n),然后从列表中获取一个项目将是O(1),新列表中的每个项目都将重复O(1),总比较量为O(n)。总的来说,整个算法是O(n),这并不破旧。