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

定义一个Worker类,属性: name:String,age:int,salary:double。
- 写回答
- 好问题 0 提建议
- 关注问题
- 邀请回答
-
1条回答 默认 最新
- Flyta_ 2021-08-05 17:06关注
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来实现遍历。
解决 无用评论 打赏 举报