2012-04-06 14 views
0
if(System.currentTimeMillis() > _thrust_lag + _thrust_delay); 
    { 
     this._thrust3Position = new_Position; 

     Log.w("Thrust Lag + Delay", Long.toString(_thrust_lag + _thrust_delay)); 
     Log.w("Current Time", Long.toString(System.currentTimeMillis())); 

     _thrust_lag = System.currentTimeMillis(); 
    } 

出力は次のようになります。 スラストラグ+ディレイ:1333710037096 CurrentTimeを:1333710027174現在の時刻IF文GT ThrustLag

_thrust_delay = 10000ところで。

これはfalseを返しますが、そうではありません。この文を出力し続けます。誰にでもアイデアはありますか?あるいは、私はここで何か根本的なものを逃していますか

このステートメント内のすべての変数はlong型であり、_thrust_lagもコンストラクタとこの関数で一度だけ設定されるため、問題が発生します。

答えて

4

末尾;末尾if文:削除してください。

実行されない文と分岐の末尾;セミコロン結果:

if (...); 

と同じである。

if (...) 
{ 
} 

これは{}内のステートメントである投稿コード手段常に実行されます。

+0

OMG何かシンプルな、私は30分のようにこれを見て、WTFを考えていた?どうもありがとう! –

+0

+1非常に良いキャッチ。 –

関連する問題