gpt4 book ai didi

java - 即使稍后分配,变量也始终为真?

转载 作者:行者123 更新时间:2023-11-29 07:16:02 25 4
gpt4 key购买 nike

我收到这个错误,我真的不明白为什么。代码:

    b1.setOnClickListener(new View.OnClickListener() {

public void onClick(View arg0) {
// TODO Auto-generated method stub
boolean b = true;
if(b == true){
tv1.setText("true");
b2.setEnabled(false);
b = false;

} else

if(b == false){
b2.setEnabled(true);
b = true;
tv1.setText("false");

如您所见,我试图在单击按钮时检查变量“b”是真还是假,然后执行以下代码。但事实并非如此!它只对“if b == true”执行操作。你能帮帮我吗?

最佳答案

可能是因为 b 在以下语句之后始终为真:

boolean b = true;

此外,b 是一个 boolean 值,您可以简单地写:

if (b) {
//
} else {
//
}

这可能会像您预期的那样工作(未测试):

b1.setOnClickListener(new View.OnClickListener() {

private boolean b = true;

public void onClick(View arg0) {
// TODO Auto-generated method stub
if(b){
b2.setEnabled(false);
tv1.setText("true");
} else {
b2.setEnabled(true);
tv1.setText("false");
}

b = !b; //this changes b from true to false and vice versa at each call
}
});

关于java - 即使稍后分配,变量也始终为真?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/9589396/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com