0

私はアンドロイドの初心者です。このチュートリアルを見て、このコードに出くわしました:

int temp = (sensor.getType() == Sensor.TYPE_ACCELEROMETER) ? 1 : 0;

誰かが私のためにこれを説明できますか。

この質問は重複している可能性がありますが、何を検索すればよいかわかりません。C#も含めて教えていただけると助かります。

4

4 に答える 4

2

あなたが説明したいことについて 100% 確信があるわけではありませんが、あなたはternary operatorJava について理解していない/知らないようです。

それは本質的に次のことを意味します。

if (sensor.getType() == Sensor.TYPE_ACCELEROMETER) {
    temp = 1;
}
else {
    temp = 0;
}

さらに、これが正しい Java コードであるかどうかもわかりません。三項演算子は代入文または return 文のいずれかに属している可能性が高いため、質問の一部を省略しているようです。

于 2013-07-23T18:50:51.587 に答える
1

これは Java であり、C# ではありませんが、三項演算子も存在します。

三項演算子については、こちらをクリックしてください。

ここで(スニペットではなく)(完全な)コードが行うことは、sensor変数がクラス定数Sensor.TYPE_ACCELEROMETERと等しいかどうかをチェックし、左側の欠落している変数に等しい場合は 1 を、そうでない場合は 0 を割り当てることです。

于 2013-07-23T18:49:58.457 に答える