Printf语句不喜欢我的输入

时间:2015-09-27 00:00:50

标签: java methods

public int maxRate(int maxRate)
    {
        maxRate = 220 - age;

        return maxRate;
    }

    // calculate target rate
    public String targetRate(int targetRateMin, int targetRateMax, String targetRate)
    {

        targetRateMin = (age * (1/2));
        targetRateMax = (age * (17/20));
        targetRate = (targetRateMin + "-" + targetRateMax);

        return targetRate;
    }

    // display message
    public void displayMessage()
    {
        System.out.printf("Name: %s %s"
                + "\n Age: %d"
                + "\n Target Heart Rate: %s"
                + "\n Maximum Heart Rate: %d"
                , getFirstName(), getLastName(), calculateAge(age), targetRate(), maxRate());
    }

当我尝试在我的printf语句中使用targetRate()maxRate时,我感到困惑的是,为什么我会收到错误(我收到的红色波浪形的东西告诉我要添加我不喜欢的内容不明白。我的方法是错的还是什么?

2 个答案:

答案 0 :(得分:1)

您没有为调用的方法提供有效的参数。

getFirstName(), getLastName(), calculateAge(age), targetRate(), maxRate());

例如,您的targetRate()maxRate()没有参数。

根据maxRate()targetRate()的方法签名,您需要

  • maxRate(int)
  • 的1个int参数
  • 2 int& 1 targetRate(int, int, String)
  • 的1个字符串参数

答案 1 :(得分:0)

  

MAXRATE()

采用整数参数。