所以我正在研究java中的一个项目,我只是一个简单的问题。
我有一个接收字符串的方法,我想去掉空格并检查它是不是空的。到目前为止,我已经有了以下内容,但它似乎没有正常工作。
public static Boolean isValid(String s) {
s.replace(" ", "");
if (s == ""){
return false;
}
else {
return true;
}
}
任何帮助将不胜感激:) TA
答案 0 :(得分:6)
你可以试试这个:
public static Boolean isValid(String s) {
return (!s.trim().isEmpty());
}
答案 1 :(得分:2)
首先,您忘记了s.replace(" ","")
的作业。将其存储在变量中,例如
x = s.replace(" ","");
对于字符串比较,请使用.equals()
方法而不是==
答案 2 :(得分:1)
您也可以使用以下代码:
newString=myString.replaceAll("\\s+","");
这将删除字符串之间的一个或多个空格以及前导和尾随空格
使用:myString.trim()
仅删除前导和尾随空格
然后newString.isEmpty()
您应该使用.equals()
来比较字符串
答案 3 :(得分:1)
在比较字符串时,请使用.equals()
。
只有在算术表达式中才使用==
符号
要检查字符串是否为空,请使用.isEmpty()
函数
答案 4 :(得分:1)
你忘记了作业:
s = s.replace(" ", "");
编辑: 对于说明==不起作用的评论。我想说它确实适用于Java 7
答案 5 :(得分:1)
replaceAll()方法支持正则表达式,并且isEmpty()已经存在于String类中,因此我们可以重用它并且在这里使用更安全。
只需使用如下:
public static Boolean isValid(String s) {
s = s.replaceAll("\\s", "");
if (s.isEmpty()) {
return false;
}
else {
return true;
}
}
答案 6 :(得分:0)
应将s.replace()的值赋给自身或其他变量。