如何解决“构建失败” / Cengage-Exercise-9的前两个计算保费的问题

时间:2019-04-26 16:09:51

标签: java

我只是在学习Java的创建方法部分,因此,我什至不知道它在说“ Build Failure”时在说什么或问我什么。我似乎已经很好地完成了代码,计算出的保费确实可以工作,并且可以正确计算答案的2/4,但是无论我做什么,似乎总是对其他两个问题说“ Build Failure”。

// Insurance.java
// Chapter 3, Exercise 9
import java.util.Scanner;
class Insurance{
   public static void main(String args[]){
      int currY, birthY, ageD = 0;

      Scanner scanny = new Scanner(System.in);
      System.out.println("What year was you born?");
      birthY = scanny.nextInt();
      System.out.println("What is the current year?");
      currY = scanny.nextInt();
      calculatePremium(currY, birthY, ageD);
   }
   public static void calculatePremium(int currY, int birthY, int ageD){
       ageD = (((birthY - currY)/10)+15)*20;
       System.out.println(ageD);
   }
}

我尝试将birthY和currY改为相反,将calculatePremium更改为int,因为我认为它在设置它之前就已经有int符号,因此可以方便学生使用,因此我将空代替int进行签名,因为我知道它会自动返回变量。

现在这是我不知道这意味着什么的部分,因为我还很新。我能理解的唯一部分是2016-1991 == 340,因为代码希望获得您年龄的几十年,然后+乘以15,然后*乘以20。我也遇到了如果我切换的问题上面的字符串代码的System.out.prinln会说我错了一个问题,什么时候甚至都不重要。 单元测试不完整 computePremium适用于26岁的人

构建状态

构建失败

构建输出

NtTest4231c145.java:9: error: method calculatePremium in class Insurance cannot be applied to given types;
    assertTrue(tester47.calculatePremium(2016, 1991) == 340);
                       ^
  required: int,int,int
  found: int,int
  reason: actual and formal argument lists differ in length
1 error

测试内容

Insurance tester47 = new Insurance();

@Test
public void unitTest() {
    assertTrue(tester47.calculatePremium(2016, 1991) == 340);
}

预期和实际结果是“生成输出”和“测试内容”。

0 个答案:

没有答案