int numOfWords = str.length() - str.replace(" ", "").length();
为什么这不起作用?如果str等于“Hello bye”,则numOfWords应该等于2,但是当运行numOfWords等于0.任何帮助都将非常感谢!
答案 0 :(得分:0)
您只替换一个空白,因此输出将为1
(至少这是我的JVM中产生的)
如果您想知道单词的数量,请在此数字中加1或使用
str.split(" ").length;
答案 1 :(得分:0)
为什么不使用:
int numOfWords = str.split(" ").length;
答案 2 :(得分:0)
我希望out put很清楚
public static void main(String[] args) {
String str = "Hello bye";
System.out.println("Length of Input String = " + str.length() + " for String = " + str);
System.out.println("Length of Input String with space removed = " + str.replace(" ", "").length() + " for String = "
+ str.replace(" ", ""));
int numOfWords = str.length() - str.replace(" ", "").length();
System.out.println(numOfWords);
}
<强>输出强>
Length of Input String = 9 for String = Hello bye
Length of Input String with space removed = 8 for String = Hellobye
1