老师请问这道题能不能输出工资的最大值

老师请问这道题能不能输出工资的最大值

我想在排序以后,输出工资的最大值例如输出  double max = 25000; 请问如何做到?

import java.util.ArrayList;

import java.util.Collections;

import java.util.List;

public class EmployeeTest{

    


    

    public static void main(String[] args){

        Employee e1 = new Employee("e001", "zhang", 18000);

Employee e2 = new Employee("e002", "li", 25000);

Employee e3 = new Employee("e003", "wang", 16000);

List <Employee>l = new ArrayList<Employee>();

l.add(e1);

l.add(e2);

l.add(e3);

System.out.println("befor");

for(Employee n:l) {

System.out.println(n);

}

Collections.sort(l);

System.out.println("after");

for(Employee n:l) {

System.out.println(n);

}

        

    }}


//实现Comparable接口

public class Employee implements Comparable<Employee>{

private String id;

private String name;

private double salar;


public Employee(String id, String name, double salar) {

super();

this.id = id;

this.name = name;

this.salar = salar;

}


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 double getSalar() {

return salar;

}


public void setSalar(double salar) {

this.salar = salar;

}


@Override

public String toString() {

return "Employee [id=" + id + ", name=" + name + ", salar=" + salar + "]";

}


@Override

public int compareTo(Employee o) {

// 工资降序

double salar1 = this.getSalar();

double salar2 = o.getSalar();

int n = new Double(salar2 - salar1).intValue();

return n;

}


}


正在回答 回答被采纳积分+1

登陆购买课程后可参与讨论,去登陆

2回答
好帮手慕小琪 2020-04-27 16:07:14

同学你好,因为同学是根据工资降序排序,所以直接输出集合中第一个人的工资就是最大工资。

代码如下图:

http://img1.sycdn.imooc.com//climg/5ea6927a098988da18710855.jpg

如果我的回答解决了你的疑惑,请采纳,祝学习愉快~

苍星乱舞 2020-04-27 15:06:24

不是已经排好序了吗?

输出list中最后一项的salary就可以了

请采纳!

  • 提问者 慕婉清1228867 #1
    请问你的意思是这样吗? for(int i=0;i<l.size();i++) { System.out.println("工资最高的对象是 : " + l.get(0)); break; } 但是我仅想把25000打印出来具体如何做到呢?
    2020-04-27 15:13:16
  • 苍星乱舞 回复 提问者 慕婉清1228867 #2
    在Collections.sort(l);语句后 System.out.println(list.get(0).getSalary());
    2020-04-27 15:23:08
问题已解决,确定采纳
还有疑问,暂不采纳

恭喜解决一个难题,获得1积分~

来为老师/同学的回答评分吧

0 星
请稍等 ...
意见反馈 帮助中心 APP下载
官方微信

在线咨询

领取优惠

免费试听

领取大纲

扫描二维码,添加
你的专属老师