我在 Java 中创建了一些方法来根据长度、字符和数字测试字符串的结果。但是,我还需要创建一种新方法来检查所有这些结果,并根据它们是否都为真生成 boolean 结果。但我不确定我是否在 IF/ELSE 循环中正确调用了其他方法,并且当我编译时,我收到一条错误,指出它需要字符串结果,但找到了 boolean 值。有什么想法我哪里出错了吗?
新方法的代码当前为:
public boolean isValidAccountNum(String s)
{
if ( isValidLength(true) && isValidStart(true) && hasValidDigits(true) ){
return true;
} else
{
return false;
}
}
其他方法是:
public boolean isValidLength(String s)
{
accountNum = s;
int accountInt = s.length();
if(accountInt == 6){
return true;
}
else {
return false;
}
}
public boolean isValidStart(String s)
{
if(Character.isUpperCase(s.charAt(0))){
return true;
}
else {
return false;
}
}
public boolean hasValidDigits(String s)
{
for (int i = 0; i < s.length(); i++) {
if (Character.isLetter(s.charAt(i))){
return false;
} else
{
return true;
}
}
}
最佳答案
isValidLength(true) && isValidStart(true) && hasValidDigits(true),这些方法的参数中没有 boolean 值。
问题答案是:
改变这个:
if(isValidLength(true) && isValidStart(true) && hasValidDigits(true)) {}
对此:
if(isValidLength(s) && isValidStart(s) && hasValidDigits(s)) {}
或
return isValidLength(s) && isValidStart(s) && hasValidDigits(s);
关于java - 在新方法中使用 boolean 结果时出错 - 需要字符串,但找到 boolean 值,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/47712270/