0

こんにちは、Javaで次のif条件があります

if ((i%3)==0)
    do some work
else if ((i%3 || i%5)==0)----syntax error appears on this line
    do some work

そして、次の構文エラーが表示されます...この行に複数のマーカー-演算子|| は引数の型 int、int に対して定義されていません - トークン "OR" の構文エラーです。予期される - i は解決できないか、フィールドではありません

誰か教えてください。これを修正するにはどうすればよいですか??

4

4 に答える 4

6

そのように複数の条件を指定することはできません。||演算子は値のみを操作しますboolean。数値を操作したい方法で操作することはできません。各条件を個別に指定する必要があります。

else if ((i%3 == 0) || (i%5 == 0))

英語では、「は 3 または 5 の倍数です」と言いますiが、その意味はわかります。Javaではそのようには機能しません。あなたはもっとはっきりしなければなりません。i必要な Java コードは、「は 3 の倍数または5 の倍数です」と同等ですi

于 2013-08-23T22:34:04.340 に答える
1

条件のすべての部分と比較する必要があります。この場合、次のelse ifようになります

else if (i%3 == 0 || i%5 == 0)
于 2013-08-23T22:34:36.067 に答える
0

演算子は||bool 型でのみ使用できます。i%3は整数です。

于 2013-08-23T22:34:32.790 に答える