你作为一个Java领域的专家,请完成以下任务:两个大文件,分别每行都存一个url,查找两个文件中重复的url。
时间: 2023-07-14 12:12:43 浏览: 94
好的,这个任务可以使用Java编程语言来完成。我会用Java提供的IO和集合类库来实现。
以下是实现的步骤:
1. 读取两个大文件中的所有行并分别存储到两个List<String>对象中;
2. 使用Java的集合交集操作,获取这两个List<String>对象中的交集部分;
3. 打印输出所有重复的url。
下面是Java代码示例:
```java
import java.io.BufferedReader;
import java.io.FileReader;
import java.io.IOException;
import java.util.ArrayList;
import java.util.HashSet;
import java.util.List;
import java.util.Set;
public class FindDuplicateUrls {
public static void main(String[] args) {
String file1 = "file1.txt";
String file2 = "file2.txt";
List<String> urls1 = readUrlsFromFile(file1);
List<String> urls2 = readUrlsFromFile(file2);
Set<String> intersection = new HashSet<>(urls1);
intersection.retainAll(urls2);
System.out.println("Duplicate URLs:");
intersection.forEach(System.out::println);
}
private static List<String> readUrlsFromFile(String filename) {
List<String> urls = new ArrayList<>();
try (BufferedReader reader = new BufferedReader(new FileReader(filename))) {
String line;
while ((line = reader.readLine()) != null) {
urls.add(line.trim());
}
} catch (IOException e) {
e.printStackTrace();
}
return urls;
}
}
```
注意,这个实现假设每个url都是一行,如果有多个url在同一行,需要对读取的数据进行适当的处理。
阅读全文