Java从数组中删除重复项?

我应该读一个包含许多不同电子邮件地址的文件,并使用数组将它们打印出来。问题是我需要消除重复的电子邮件。

我能够尝试/捕捉并打印出电子邮件地址。但是,我不确定如何删除重复项。我对散列码或如何使用Set尚不了解。任何援助将不胜感激。

这是我到目前为止的内容:

import java.util.Scanner;

import java.io.*;

public class Duplicate {

public static void main(String[] args) {

Scanner keyboard = new Scanner(System.in);

System.out.println("Enter file name: ");

String fileName = keyboard.nextLine();

if (fileName.equals("")) {

System.out.println("Error: User did not specify a file name.");

} else {

Scanner inputStream = null;

try {

inputStream = new Scanner(new File(fileName));

} catch (FileNotFoundException e) {

System.out.println("Error: " + fileName + " does not exist.");

System.exit(0);

}

String[] address = new String[100];

int i = 0;

while (inputStream.hasNextLine()) {

String email = inputStream.nextLine();

// System.out.println(email);

address[i] = email;

System.out.println(address[i]);

i++;

}

}

}

}

回答:

简单的解决方案是使用Set Java,

因此设置自动删除重复值

并且在你的代码中你拥有数组,而不是将转换数组直接使用代码设置

Set<T> mySet = new HashSet<T>(Arrays.asList(someArray));

以上是 Java从数组中删除重复项? 的全部内容, 来源链接: utcz.com/qa/421496.html

回到顶部