假设我有一个布尔方法,它使用 if 语句来检查返回类型是 true 还是 false :
public boolean isValid() {
boolean check;
int number = 5;
if (number > 4){
check = true;
} else {
check = false;
}
return check;
现在,我想在不同的方法中将此方法用作 if 语句的参数:
if(isValid == true) // <-- this is where I'm not sure
//stop and go back to the beginning of the program
else
//continue on with the program
基本上我要问的是,如何检查if语句参数中布尔方法的返回类型是什么?非常感谢您的回答。
答案 0 :(得分:12)
因为这是一种方法,所以要调用它后你应该使用parens,这样你的代码就会变成:
if(isValid()) {
// something
} else {
//something else
}
答案 1 :(得分:3)
public boolean isValid() {
int number = 5;
return number > 4;
}
if (isValid()) {
...
} else {
...
}
答案 2 :(得分:2)
你应该能够在IF条件下调用函数,所以:
if (isValid()) {
}else {
}
由于isValid()
返回boolean
,因此将立即评估条件。我听说在你测试条件之前创建一个本地var是更好的形式。
boolean tempBoo = isValid();
if (tempBoo) {
}else {
}
答案 3 :(得分:1)
- If
声明仅接受 boolean
值。
public boolean isValid() {
boolean check = false; // always intialize the local variable
int number = 5;
if (number > 4){
check = true;
} else {
check = false;
}
return check;
}
if(isValid()){
// Do something if its true
}else{
// Do something if its false
}
答案 4 :(得分:0)
if (isValid()) {
// do something when the method returned true
} else {
// do something else when the method returned false
}
答案 5 :(得分:0)
您可以使用:
if(isValid()){
//do something....
}
else
{
//do something....
}
答案 6 :(得分:0)
public boolean isValid() {
boolean check;
int number = 5;
if (number > 4){
check = true;
} else {
check = false;
}
return check;
如何在没有布尔检查的情况下完成整个方法?
那么如何摆脱.. check = true,check = false,返回检查东西?