-2

CodingBat の演習では、2 つの int 値のどちらが 10 に最も近いかを確認する必要がありますが、エラーが発生し続け、その理由がわかりません。

私が得ているエラーはこれです:

abs(int)クラスのメソッドMathは引数に適用できません ( boolean)

public int close10(int a, int b) {
    int m;
    if (Math.abs(a - 10 > b - 10)) // here is the error
        m = b;
    else
        m = a;

    return m;
}
4

4 に答える 4

0

メソッドを 2 回使用する必要がありますが、使用するのはMath.abs1 回だけです。

    if (Math.abs(a - 10) > Math.abs(b - 10))

Math.absのような条件ステートメントでのような操作を実行することはできませa - 10 > b - 10ん。ご覧のとおり、論理的な意味をなさないだけです。また、補足として、コードにもう少し書式を設定することをお勧めします。これは少し厄介です。

于 2013-10-28T22:45:23.687 に答える