1.Employee
package stream;
public class Employee implements ComparableEmployee{
private int id;
private String name;
private int age;
private double salary;
public double getSalary() {
return salary;
}
public String getName() {
return name;
}
public Employee(int id, String name, int age, double salary) {
this.id = id;
this.name = name;
this.age = age;
this.salary = salary;
}
@Override
public String toString() {
return Employee{ + id= + id + , name=' + name + ''' + , age= + age + , salary= + salary + '}';
}
@Override
public boolean equals(Object o) {
if (this == o)
return true;
if (o == null getClass() != o.getClass())
return false;
Employee employee = (Employee) o;
if (id != employee.id)
return false;
if (age != employee.age)
return false;
if (Double.compare(employee.salary, salary) != 0)
return false;
return name != null name.equals(employee.name) employee.name == null;
}
@Override
public int hashCode() {
int result;
long temp;
result = id;
result = 31 result + (name != null name.hashCode() 0);
result = 31 result + age;
temp = Double.doubleToLongBits(salary);
result = 31 result + (int) (temp ^ (temp 32));
return result;
}
@Override
public int compareTo(Employee employee) {
if (this.id != employee.id)
return this.id - employee.id;
else
return this.age - employee.age;
}
}
2.EmployeeData
package stream;
import java.util.ArrayList;
import java.util.List;
public class EmployeeData {
public static ListEmployee getEmployees(){
ListEmployee list = new ArrayList();
list.add(new Employee(1001, 马化腾, 34, 6000.38));
list.add(new Employee(1002, 马云, 12, 9876.12));
list.add(new Employee(1003, 刘强东, 33, 3000.82));
list.add(new Employee(1004, 雷军, 26, 7657.37));
list.add(new Employee(1005, 李彦宏, 65, 5555.32));
list.add(new Employee(1006, 比尔盖茨, 42, 9500.43));
list.add(new Employee(1007, 任正非, 26, 4333.32));
list.add(new Employee(1008, 扎克伯格, 35, 2500.32));
list.add(new Employee(1008, 扎克伯格, 35, 2500.32));
return list;
}
}