0

这是我的员工计划的一部分。我只练习 Java 几个月,但遇到了一些麻烦。我需要使用 findHightest 方法中提供的新 MonthDataPair,该方法提供了一个具有参数highestMonth 和maxSalary 的对象。我需要使用该对象的 getter 方法来返回月份和薪水。下面的代码只是找到我希望访问的数据的存储月份。现在我需要显示数据,但我不确定如何正确地做到这一点。所有数据都来自一个被读取并存储在数组中的文档。

    private MonthDataPair findHighest() {
        int highestMonth = 0;
        double maxSal = -1;
        for (int index = 0; index < MonthCount; index++) {
            double total = theMonth[index].totalSalary();
            if (total > maxSalary) {
                maxSalary = total;
                highestMonth = [theMonthindex].Month();
            } 
        } 
        return new MonthDataPair(highestMonth, maxSalary);
    } 

好的,伙计们,这里是 MonthDataPair,这是考试的练习,我不允许修改下面的 MonthDataPair 类。它被提供了。

public class MonthDataPair {

private final int    month;
private final double data;

 public MonthDataPair(int month, double data) {
  this.data = data;
  this.month = month;
 } 

 public int month() {
    return month;
} 

   public double data() {
   return data;
  }  

} 
4

2 回答 2

2

您在这里所做的是返回一个 MonthDataPair 类的对象,从中调用函数 findHighest。因此,如果您在 MonthDataPair 类中有用于 Month 和 Salary 实例的 getter 方法,那么您可以将它与返回的对象一起使用,如下所示:

MonthDataPair mdp = findHighest();
Month month = mdp.getMonth();
Salary salary = mdp.getSalary();

MonthDataPair 中的 getter 方法必须如下所示:

public Month getMonth(){
    return this.month;
}

希望它可以帮助你:)

于 2013-10-26T07:52:58.563 回答
1

添加

 int getMonth(){
    return month;
   }

   double getSalar(){
    return salary;
   } 

MonthDataPair类中的方法

你的课应该是这样的

public class MonthDataPair {
int month;
double salary;

public MonthDataPair(int month, double salary) {
    this.month = month;
    this.salary = salary;
}

public int getMonth() {
    return month;
}

public void setMonth(int month) {
    this.month = month;
}

public double getSalary() {
    return salary;
}

  public void setSalary(double salary) {
    this.salary = salary;
  }

 }
于 2013-10-26T07:48:37.477 回答