コンパイルしようとすると、このエラーが発生します。
比較できない型: boolean と int
result= (result) && (found_list[i] !=0);
なぜこのエラーが発生するのですか? どうすれば修正できますか??
コンパイルしようとすると、このエラーが発生します。
比較できない型: boolean と int
result= (result) && (found_list[i] !=0);
なぜこのエラーが発生するのですか? どうすれば修正できますか??
found_list[i]
ブール0
型とint型を比較しようとしています
次に変更します
result= (result) && (found_list[i] !=0);
に
result= (result) && (found_list[i]);
found_list []はブール配列であるため、int値と比較することはできません。(found_list[i] !=0)
間違っている。
それを行う方法は次のようになります。
result= (result) && (found_list[i]);
c、c++、および他の多くの言語とは異なり、0
&はJavaでは&で1
はありません。 false
true
これはよくある間違いです。また、次のようなチェックを行うことboolean != false
は、真かどうかをチェックすることとまったく同じboolean
です。すなわち
if(b != false)
と同じです
if(b)
だから、あなたはすることができます
result = result && found_list[i];
Boolean は True または False のみを値として取り、int、long、double、short などの他のデータ型のようなものは何も取りません...
したがって、結果がブール値の場合、そこに格納する値も真または偽のブール値である必要があります。
result= (result) && (found_list[i] !=0);
ここ(結果) は True または False のいずれかです。
ブール値の結果。
その場合、ここの値は false です。Else の前にどこかで変更した場合は、それぞれの値になります。
今 (found_list[i] !=0); 間違ったコーディング方法です。found_list[] がブール値の場合、それを int 値 (この場合は 0) と比較することはできません。
あなたまたはここでやろうとしていることは、比較できない true/false!=0 です。
したがって、このエラーが発生しています。代わりに、次のように変更できます。
result= ((result) && (found_list[i]))