删除数组中的重复条目 - Java

Ran*_*ath 5 java arrays duplicates

对于Java实践,我试图在EmployeesDirectory类中创建一个方法:

  • 从阵列中删除重复的条目
  • 删除重复项后,数组的长度应相同
  • 非空条目应该在数组的开头形成一个连续的序列 - 而actualNum应该保留条目的记录

重复意味着:相同的名称,职位和薪水

这是我目前的代码:

我不确定如何实现这一点 - 任何帮助将不胜感激

class EmployeeDirectory {

    private Employee dir[];
    private int size;
    private int actualNum;

    public EmployeeDirectory(int n) {
        this.size = n;
        dir = new Employee[size];
    }

    public boolean add(String name, String position, double salary) {
        if (dir[size-1] != null) {
            dir[actualNum] = new Employee(name, position, salary);
            actualNum++;
            return true;
        } else {
            return false;
        }
    }
}
Run Code Online (Sandbox Code Playgroud)

Lys*_*rii 4

我宁愿你没有编写一个独特的方法来删除重复项。如果我是你,我会在方法中搜索重复项add,然后立即决定是否需要添加Employee.

另外,为什么不使用SetsHashSet的链接)而不是数组来达到您的目的?根据其自己的定义,集合不允许添加重复项,因此它们似乎适合作为解决方案