有 Java 编程相关的问题?

你可以在下面搜索框中键入要查询的问题!

java Printf语句不喜欢我的输入

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时,我很困惑为什么会出现错误(我得到了红色的扭曲的东西,告诉我添加我不理解的东西)。是我的方法错了还是怎么了


共 (1) 个答案

  1. # 1 楼答案

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

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

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

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

    • 1个整型参数,用于maxRate(int)
    • 2国际及;1个targetRate(int, int, String)的字符串参数