Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/java/306.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/sorting/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Java:使用sortOrder对列表进行排序_Java_Sorting_Collections_Comparator - Fatal编程技术网

Java:使用sortOrder对列表进行排序

Java:使用sortOrder对列表进行排序,java,sorting,collections,comparator,Java,Sorting,Collections,Comparator,我正在对列表列表进行排序,下面是我当前的代码片段 我的员工POJO如下所示 List<Employee> employeesList = new ArrayList<Employee>(); employeesList.add(employee01); employeesList.add(employee02); 现在,我想为“Employee”和“EmployeeProgramm”分配排序器 我知道集合。用比较器排序是有效的。但不知道怎么可能 在这方面帮助我。提前感谢

我正在对列表列表进行排序,下面是我当前的代码片段

我的员工POJO如下所示

List<Employee> employeesList = new ArrayList<Employee>();
employeesList.add(employee01);
employeesList.add(employee02);
现在,我想为“Employee”和“EmployeeProgramm”分配排序器

我知道集合。用比较器排序是有效的。但不知道怎么可能


在这方面帮助我。提前感谢。

您可以实现Comparable接口,然后按如下所示重写compareTo方法

public int compareTo(Employee emp){  
  if(sortOrder==emp.sortOrder)  
    return 0;  
  else if(sortOrder>emp.sortOrder)  
    return 1;  
  else  
    return -1;  
}  
对EmployeeProgramm类重复相同的步骤 并重写此方法

public int compareTo(EmployeeProgram empProg){  
  if(sortOrder==empProg.sortOrder)  
    return 0;  
  else if(sortOrder>empProg.sortOrder)  
    return 1;  
  else  
    return -1;  
} 
和使用


Collection.sort(员工列表)

可能的重复是不清楚你想要达到什么。这是一个如何对数组列表进行排序的示例。希望这有助于我将员工“排序程序”和员工程序“排序程序”分别设置为员工程序中的最大“程序计数”。
public int compareTo(Employee emp){  
  if(sortOrder==emp.sortOrder)  
    return 0;  
  else if(sortOrder>emp.sortOrder)  
    return 1;  
  else  
    return -1;  
}  
public int compareTo(EmployeeProgram empProg){  
  if(sortOrder==empProg.sortOrder)  
    return 0;  
  else if(sortOrder>empProg.sortOrder)  
    return 1;  
  else  
    return -1;  
}