Java 字符等于空间

Java 字符等于空间,java,char,equals,space,Java,Char,Equals,Space,这是我的密码 public class main_class { public static void main(String[] args) { Scanner sc = new Scanner (System.in); char e; int q=0; for(;;){ System.out.print("Enter the symbol:"); e=sc.next().c

这是我的密码

public class main_class {
    public static void main(String[] args) {
        Scanner sc = new Scanner (System.in);
        char e;
        int q=0;
        for(;;){
            System.out.print("Enter the symbol:");
            e=sc.next().charAt(0);
            if (e== ' '){
                q++;
            }
            if (e== '.')break;
        } 
        System.out.println("Spaces : " + q);
    }
}
q始终为0,我也尝试过:

if (e == ' ' || e == '\t' || e == '\r' || e == '\n' ) {
    // ...
} 

和字符。isWhitespace(e)。谢谢大家!

空格不是next()的输入值

试用

        String temp=sc.nextLine();
        e=temp.charAt(0);

空格不是next()的输入值

试用

        String temp=sc.nextLine();
        e=temp.charAt(0);

你在问什么?为什么q总是0?如果我输入空格,您的扫描仪将使用空格作为分隔符。从中获得的令牌永远不会以空格开头。空格是默认分隔符。所以扫描器总是提示他们。你在问什么?为什么q总是0?如果我输入空格,您的扫描仪将使用空格作为分隔符。从中获得的令牌永远不会以空格开头。空格是默认分隔符。所以扫描器总是会扫描它们。