我需要在java中找到String变量的内容是否为boolean。 我得到了#34; True"或"错误"或"垃圾" as String。
在数据是" True"时寻找一种返回true的方法。或"错误" &安培;任何"其他值"。
时为false我写的代码:
Boolean checkBoolean(String val){
boolean result;
switch(val){
case "true":
result =true;
break;
case "false":
result =true;
break;
default:
result = false;
}
return result;
}
提前致谢
答案 0 :(得分:2)
假设,如果val为TRUE或FALSE(忽略大小写),则需要TRUE。
boolean checkBoolean(String val){
val = val.toLowerCase();
return (val.equals("true") || val.equals("false"));
}
另一方面,如果字符串为TRUE(忽略大小写),则要求函数返回true,否则返回false;使用
Boolean boolean1 = Boolean.valueOf("true");
boolean boolean2 = Boolean.parseBoolean("true");
对于上述方法,请查看javadoc。
使用布尔而不是布尔值只是一个警告。
答案 1 :(得分:1)
我会在这里质疑目标。你真正想知道的是你是否收到了"true"
的可接受形式。在这种情况下,Boolean.parseBoolean()
正是您所需要的。
答案 2 :(得分:0)
您应该使用:
public boolean getBool(String s) {
return (s.equals("True") || s.equals("False"));
}
如果你想接受不区分大小写,例如:TrUe,fALSe等,请使用
s.equalsIgnoreCase("... ")
答案 3 :(得分:0)
鉴于案件并不重要,我会尝试以下代码:
boolean checkBoolean(String val){
if ("true".equalsIgnoreCase(val)) {
return true;
} else if ("false".equalsIgnoreCase(val)) {
return true;
} else {
return false;
}
}
它与上面的内容非常相似,但与案例无关。如果我在这里遗漏了一些隐藏的要求,请告诉我。
答案 4 :(得分:0)
您可以尝试:
Boolean checkBoolean(String val){
if(val.trim().equalsIgnoreCase("true"))
{
return true;
}
else if(val.trim().equalsIgnoreCase("false"))
return true;
else
return false;
}
这样您就不必声明本地布尔变量。
Trim允许您发送带有空格的字符串。
IgnoreCase可以帮助您发送大小写较差的字符串,例如TruE
或faLSe
。
答案 5 :(得分:0)
你可以做到
public boolean isBooleanCheck(String s) {
return (s.equalsIgnoreCase("true") || s.equalsIgnoreCase("false"));
}
答案 6 :(得分:0)
使用String.matches(字符串表达式)的正则表达式。
返回val.matches(“(?i)(true)|(false)”);
“(?i)”是不区分大小写的。
答案 7 :(得分:-1)
我认为你想要做的就是这样做:
return myBoolean instanceof Boolean;
答案 8 :(得分:-1)
试试这个:
public static void main(String[] args) {
String i = "true";
boolean z = checkBoolean(i);
System.out.println(z);
}
public static boolean checkBoolean(String i){
if(i.equalsIgnoreCase("true")||i.equalsIgnoreCase("false")){
return true;
}
return false;
}
答案 9 :(得分:-2)
数据类型boolean
用于包含true
或false
的值。因此,如果您将变量声明为boolean
,则它将包含true
或false
。您可以根据您的要求使用该结果。例如:
boolean i = true;
boolean u = false;