我正在读取两个文件,在这两个文件中都找到了一些行。我需要编写一个函数来检测在两个文件中找到哪些行。现在我为此编写了代码,它将读取文件 1 的内容并将记录放入数组列表中,然后读取文件 2,对于文件 2 中的每一行,我检查是否在数组列表中找到它,如果找到,我知道它是一个重复行。现在我的问题是我在数组列表中保存整行,我想知道是否可以将我读取的行转换为哈希码,然后我将这个哈希码保存到数组列表中,之后,我将这个哈希码与我从 file2 读取的行的哈希码,这是节省内存的更好方法吗?
最佳答案
如果两个哈希码不同,则行不同。如果两个哈希码相同,则行可能相同也可能不同。
如果您将文件存储在 HashSet 中,查找一行是否已经存在是一个非常快的操作。 HashSet 在内部使用哈希码。
关于java - 在java中使用哈希码比较两个大字符串?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/7674761/