问题描述
如何在不更改 A或B 的情况下访问isTrue的 IF ELSE 代码? 我尝试了 return true ,但它不会返回,因为它在方法中。有关键字吗?
public void test() {
if (text1.equals("") {
//Output error message
} else if (text2.equals("") {
//Ouput error message
.
.
.
} else if (A!= null && (A > B)) {
//GO TO ELSE condition without changing the A or B
} else { if (isTrue){} }
}
解决方法
从其他条件中取出最后一个条件:
public void test() {
if (text1.equals("") {
//Output error message
} else if (text2.equals("") {
//Ouput error message
} else if (A!= null && (A > B)) {
//GO TO ELSE condition without changing the A or B
}
if (isTrue){ }
}
,
在我看来,就像您尝试使用该方法返回布尔值以检查任何参数一样... 如果那是真的,请使用:
public boolean testParams() {
// check text 1
if (text1.equals("this shouldnt be inside") {
System.out.println("This is an error text 1 is not what expected");
return false;
}
// check test2
if (text2.equals("this shouldnt be inside") {
// do sth
.
.
.
System.out.println("This is an error text 2 is not what expected");
return false;
}
if(A < B && isTrue)
return true;
// in any other case return false
return false;
}
如果它应该是一个void(这样一个没有任何返回值的方法),请执行以下操作:
public void testParams() {
// check text 1
if (text1.equals("this shouldnt be inside") {
System.out.println("This is an error text 1 is not what expected");
return;
}
// check test2
if (text2.equals("") {
// do sth and then at the end return with an error
.
.
System.out.println("This is an error text 2 is not what expected");
return;
}
if(A < B) {
// do something when A is smaller then B
if(isTrue) {
// do sth when parameter isTrue is true...
} else {
// do another action when parameter isTrue = false...
}
} else {
// do something when A is greater then B
}
}