Employee类:
package test02;
public class Employee {
private String id;
private String name;
private Integer wages;
public Employee() {}
public Employee(String id,String name,Integer wages) {
this.id = id;
this.name = name;
this.wages = wages;
}
public String getId() {
return id;
}
public void setId(String id) {
this.id = id;
}
public String getName() {
return name;
}
public void setName(String name) {
this.name = name;
}
public Integer getWages() {
return wages;
}
public void setWages(Integer wages) {
this.wages = wages;
}
@Override
public String toString() {
return "员工id是:" + id + ", 姓名:" + name + ", 工资:" + wages ;
}
}
package test02;
import java.util.ArrayList;
import java.util.Collection;
import java.util.Collections;
import java.util.Comparator;
import java.util.HashMap;
import java.util.Iterator;
import java.util.List;
import java.util.Map;
import java.util.Map.Entry;
import static java.util.stream.Collectors.toList;
public class HomeWork2 {
private static class ValueComparator implements Comparator<Map.Entry<String,Integer>>
{
public int compare(Map.Entry<String,Integer> m,Map.Entry<String,Integer> n)
{
return n.getValue()-m.getValue();
}
}
public static void main(String[] args) {
//集合1
List<String> list1 = new ArrayList<String>();
list1.add("zhangsan");
list1.add("lishi");
list1.add("wangwu");
list1.add("zhaoliu");
list1.add("qiantu");
//集合2
List<String> list2 = new ArrayList<String>();
list2.add("liming");
list2.add("wangshuang");
list2.add("zhangsan");
list2.add("wangwu");
list2.add("xiaoxiao");
//是否存在交集
List<String> intersection = list1.stream().filter(item -> list2.contains(item)).collect(toList());
System.out.println("list1,list2存在的交集有:");
intersection.parallelStream().forEach(System.out :: println);
//HasMap
Employee e1 = new Employee("1001","王小",5000);
Employee e2 = new Employee("1002","舟骨",3000);
Employee e3 = new Employee("1003","库里",6000);
Employee e4 = new Employee("1004","黄埔",10000);
Map<Employee,Integer> map = new HashMap<Employee,Integer>();
map.put(e1, e1.getWages());
map.put(e2, e2.getWages());
map.put(e3, e3.getWages());
map.put(e4, e4.getWages());
//从大到小的排序
List<Map.Entry<String,Integer>> list=new ArrayList<>();
list.addAll((Collection<? extends Entry<String, Integer>>) map.entrySet());
HomeWork2.ValueComparator vc=new ValueComparator();
Collections.sort(list,vc);
for(Iterator<Map.Entry<String,Integer>> it=list.iterator();it.hasNext();)
{
System.out.println(it.next());
}
}
}
运行代码截图: