質問: KeyManage.KEY_LONGPRESSED ) { System.out.println( "はい" ); } } ※KEY_UPはキー処理クラスのインスタンス とするとif文内の処理が行われません。 ただ、if文前にSystem.out.println( KEY_UP.getKeyState() );を追加するとif文の処理が行われます。 上キーの状態を表示しているかしていないかで何かが変わるわけでもないのにif文の処理が行われるかどうかが変わってしまって困っています。 お願いします。
回答: 変数をすべて大文字の名前にすると、定数と見分けが付かな いのでやめた方がいい。 Oracleの出している標準のコード規約を参照。 全然試してないが、別スレッドで動いているということで、 フィールドへ反映されるタイミングではないのかな。 ifに入る前にスリープがあるとどうなんだろう。 関係ないが、そういう状態を示す定数にはenumを使う方がい い。