如何检查字符串中的空格?

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了如何检查字符串中的空格?相关的知识,希望对你有一定的参考价值。

您如何检测字符串中的空格?这是我的代码,我试图找到一个空格作为char,但是每1个空格,它加5而不是1。有人可以向我解释吗?

enter image description here

public static void main(String[] args) {

    Main main = new Main();

    String s = "HELLO WORLD";

    System.out.println("Vowel is = "+main.balancedSplitString(s));

}

public int balancedSplitString(String s) {

    char vowel[] = {'A', 'I', 'U', 'E', 'O'};
    int space = 0;
    int result = 0;

    for (int i = 0; i < s.length(); i++) {
        for (int j = 0; j < vowel.length; j++) {
            /*ignore this part
            if (s.charAt(i) == vowel[j]) {
                result++;
            }*/
            else if(s.charAt(i) == ' '){
                space++;
            }
        }
    }

    System.out.println("Space is = " + space);

    return result;
}
答案

您有一个嵌套的for循环。对于外循环的每个迭代,内循环将进行5次迭代,因为有五个元音。您可以使用调试器的“逐步执行”功能来进行检查。

这意味着对于i的每个值,内部for循环中的事物运行5次。当i到达空格所在的索引时,space++运行5次,因为在内部循环循环时i从不改变。]

要解决此问题,只需将space++移到内部for循环之外,但仍在外部for循环内部:

for (int i = 0; i < s.length(); i++) {
    for (int j = 0; j < vowel.length; j++) {
        /*ignore this part
        if (s.charAt(i) == vowel[j]) {
            result++;
        }*/
    }
    if(s.charAt(i) == ' '){ // here!
        space++;
    }
}

以上是关于如何检查字符串中的空格?的主要内容,如果未能解决你的问题,请参考以下文章

如何检查字符串中的三个或更多空格 - Python [重复]

如何检查 char 数组中的空格?

如何从该片段中的 onItemSelectedListener 中获取微调器单击的项目?

pyspark 中的正则表达式来检查字母和空格(也可以使用 uni 代码)

如何检查一个字符是不是等于一个空格?

如何检查字符串是不是包含字符和空格,而不仅仅是空格?