给定一个包含空白元素的数组,如何打印除空白元素以外的所有元素?

Given a array with a blank element how do I print all elements except the blank one?

我有一个名为 votacoes 的 chars 数组。当我这样做时:

for (int i = 0; i < nDeputados; i++) {
    System.out.println(votacoes[i]);
}

输出是:

S
A

S
S
S
N
A

如您所见,索引 2 中有一个空白字符。

要打印除空白字符以外的所有内容,以下 if 中的条件是什么?

for (int i = 0; i < nDeputados; i++) {
    if(???????????){
        System.out.println(votacoes[i]);
    }
}
for (int i = 0; i < nDeputados; i++) {
    if(!String.valueOf(votacoes[i]).matches("\s")){
        System.out.println(votacoes[i]);
    }
}

这将跳过任何类型的 space 个字符并打印出连续输出。

您可以使用 String isBlank 方法:

for (int i = 0; i < nDeputados; i++) {
    if(!StringUtils.isBlank(votacoes[i])){
    System.out.println(votacoes[i]);
    }
}

看这里: http://commons.apache.org/proper/commons-lang/javadocs/api-2.6/org/apache/commons/lang/StringUtils.html#isBlank%28java.lang.String%29

for (int i = 0; i < nDeputados; i++)
{
 if(Character.isAlphabetic(votacoes[i]))

      System.out.println(votacoes[i]);
}

Character.isAlphabetic() 方法 returns 如果传递的值是字母表则为真。希望这会有所帮助:)

使用此代码

      for (int k = 0; k < votacoes.length; k++) {
        if (votacoes[k]==' ') {
            k++;
        }
        System.out.println(votacoes[k]);

希望它对你有用..

char[] votacoes = {'S','A',' ','S','S','S','N','A'};
for (char b : votacoes) {
    if(!Character.isWhitespace(b)) {
        System.out.println(b);
    }
}