定义一个Worker类,属性: name:String,age:int,salary:double。

定义一个Worker类,属性:
• name:String,age:int,salary:double
▪ a).把若干Worker对象放在List中,排序并遍历输出,按照age
升序排列
▪ b).把若干Worker对象放在Set中并遍历,要求没有重复元素
▪ c).把若干Worker对象放在Map中并按照三种方式分别遍历,
要求以Worker的姓名作为key

img


import java.util.ArrayList;

public class Test {
    public ArrayList<Worker> orderByAge(ArrayList<Worker> workers){
        //按年龄进行冒泡排序
        for(int i=0;i<workers.size()-1;i++){
            for(int j=0;j<workers.size()-i-1;j++){
                if(workers.get(j).getAge()>workers.get(j+1).getAge()){
                    Worker worker=workers.get(j);
                    workers.set(j,workers.get(j+1));
                    workers.set(j+1,worker);
                }
            }
        }
        return workers;
    }
    public static void main(String[] args) {
        ArrayList<Worker> arrayList=new ArrayList<>();
        for(int i=0;i<10;i++){
            Worker worker=new Worker();
            worker.setName("A"+Math.random()*100);
            worker.setAge((int)(Math.random()*10+30));
            //2000-4000元之间
            worker.setSalary(Math.random()*2000+2000);
            arrayList.add(worker);
        }
        Test test=new Test();
        test.orderByAge(arrayList);
        for(int i=0;i<arrayList.size();i++){
            System.out.println(arrayList.get(i).getAge());
        }
    }
}

Worker类的定义很简单,a的代码我直接给你了,bc提供思路。b的话Set集合本身不允许包含相同的元素,如果试图把两个相同元素加入同一个Set集合中,则添加操作失败。c的话name作为key,一个Worker对象就是value,三种遍历方式是entrySet遍历、Iterator遍历和通过keySet或values来实现遍历。