令牌上的语法错误"(" ,;预期

时间:2015-02-01 16:11:44

标签: java syntax-error

所以我在CodingBat工作,学习Java,但它一直把这个错误扔给我下面的代码。

public int noTeenSum(int a, int b, int c) {
    return fixTeen(a)+fixTeen(b)+fixTeen(c);

    public int fixTeen(int x) {
        if(x<=12||x>=20||x==15||x==16)
            return x;
        return 0;
    }
}

问题的目标如下:

  

给定3个int值,a b c,返回它们的总和。但是,如果任何值是青少年 - 在13..19(含)范围内 - 则该值计为0,除了15和16不算青少年。写一个单独的帮助器&#34; public int fixTeen(int n){&#34;它接受一个int值并返回为青少年规则修复的值。通过这种方式,您可以避免重复青少年代码3次(即&#34;分解&#34;)。在主no10eenSum()下面定义帮助程序,并在相同的缩进级别。

有什么建议吗?

1 个答案:

答案 0 :(得分:3)

}之后您错过了return fixTeen(a)+fixTeen(b)+fixTeen(c);,而且不需要上次}

public int noTeenSum(int a, int b, int c) {
 return fixTeen(a)+fixTeen(b)+fixTeen(c);
}

public int fixTeen(int x) {
 if(x<=12||x>=20||x==15||x==16)
  return x;
 return 0;
 }