Android布尔值,如果条件不工作

Android布尔值,如果条件不工作,android,Android,如果(!updateing_questions)在以下方法中的my intent服务中不起作用,我将检查布尔值 private void sendBroadcast(Context context, String key, String value){ //Don't broadcast if updating questions Util.log_debug_message("@@@@ Updating questions - " + updating_questions);

如果(!updateing_questions)在以下方法中的my intent服务中不起作用,我将检查布尔值

private void sendBroadcast(Context context, String key, String value){
    //Don't broadcast if updating questions
    Util.log_debug_message("@@@@ Updating questions - " + updating_questions);
    if(!updating_questions){
        Util.log_debug_message("@@@@ Broadcasting, updating_questions = " + updating_questions);
        Broadcast.sendBroadcast(context, ResponseReceiver.ACTION_RESP, Intent.CATEGORY_DEFAULT,
                key, value);
    }
}
更新_questions标志是一个全局私有变量,其值为false

private boolean updating_questions = false;
该值是通过onHandleIntent(意图)方法中的额外值设置的

该值是使用

    if(updating_questions){
        refreshService.putExtra(AppConstants.C2DM_MESSAGE_UPDATE_QUESTIONS, true);
    } else {
        refreshService.putExtra(AppConstants.C2DM_MESSAGE_UPDATE_QUESTIONS, false);
    }
这张支票似乎运行正常 控制台中的输出显示值为false,但条件被视为true

D/QuizApp (  878): @@@@ Updating questions - false
D/QuizApp (  878): @@@@ Broadcasting, updating_questions = false
那么,如果该值为false,如何才能广播该消息?
很明显,我遗漏了一些非常基本的东西,但我不知道它是什么,如果你的
条件是:

!updating_questions

这意味着,如果
更新\u问题
不是则执行此块操作(请参阅
运算符)。

如果
条件为:

!updating_questions

这意味着,如果
更新问题
不是则执行此阻止操作(请参阅
运算符)。

感谢您的回复,那么如何防止在更新问题为false时调用此阻止?@jamesw删除
来自
if
条件:
if(更新问题){/…
@jamesw呃…如果值为真,您希望它执行,但您不希望执行?快速跟进。我的条件是正确的,只是值在本应设置为真时被设置为假。需要更多咖啡!作为良好的实践,并且作为保持理智的一种帮助,避免“负面逻辑检查”尽可能。对代码的运行方式没有影响,但对读取、理解和维护有很大影响。if(condition){}比if(!condition){}好得多。以“not”开头的布尔字段名,例如notUpdated,是负面逻辑“代码气味”的赠品。感谢您的回复,那么如何防止在更新问题为false时调用块?@jamesw从
if
条件中删除
if(更新问题){/…
@jamesw呃…如果值为真,您希望它执行,但您不希望执行?快速跟进。我的条件是正确的,只是值在本应设置为真时被设置为假。需要更多咖啡!作为良好的实践,并且作为保持理智的一种帮助,避免“负面逻辑检查”尽可能。对代码的运行方式没有影响,但对读取、理解和维护有很大影响。if(condition){}比if(!condition){}好得多。以“not”开头的布尔字段名,例如notUpdated,是负面逻辑“代码气味”的赠品。该set语句是冗余的;只需将app常量设置为更新_问题的值。该set语句是冗余的;只需将app常量设置为更新_问题的值。