当前位置: 首页 > 面试题库 >

Java从数组中删除重复项?

束俊材
2023-03-14
问题内容

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

我能够尝试/捕捉并打印出电子邮件地址。但是,我不确定如何删除重复项。我对散列码或如何使用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));


 类似资料:
  • 问题内容: 我使用下面的代码行遍历数据库中的一个表: 如果我打印出数组: 我会得到这个: 但是我想摆脱数组中的重复项,所以我使用 我得到下面的奇怪结果,这不是我想要的结果: 理想情况下,我认为它应该返回以下内容: 我该怎么做才能正确处理?我使用了错误的PHP语法/默认功能吗? 问题答案: 该功能将为您完成此操作。您只需要添加标志:

  • 所以,我有两个多维数组。 数组值示例: 这就是我想要的 我想从组合中获得所有唯一的数组,并用它填充唯一的组合。 我尝试了这个函数,但它只填充了5个数组,真奇怪!

  • 这是我的数据: 使用Lodash,我如何删除具有重复id键的对象?有过滤器,地图和独特的东西,但不太确定。 我的真实数据集要大得多,有更多的键,但概念应该是一样的。

  • 我有一个问题编码这个: 编写一个名为的静态方法,该方法将整数数组作为输入,并返回一个新的整数数组,其中所有重复项都被删除。例如,如果输入数组具有元素{4,3,3,4,5,2,4},则结果数组应为{4,3,5,2} 这是我目前所做的

  • 我有一个由用户填充的字符数组(

  • 假设对象数组如下所示: 如果标签和颜色相同,则会出现重复条目。在这种情况下,id=1和id=5的对象是重复的。 根据注释中的请求,这里是期望的结果: