java判断char类型是否是空格

import java.util.Scanner;

public class B1057 {
    public static void main(String[] args) {
        Scanner in = new Scanner(System.in);
        String input = in.nextLine();
        char basech1 = 'A';
        char basech2 = 'a';
        int sum = 0;
        for (int i = 0; i < input.length(); i++)
        {
            char ch = input.charAt(i);
            if ( ch != '\0' && ch != '(' && ch != ')')
            {
                if ((int)ch > 90)
                {
                    sum = sum + (ch - basech2);
                }
                else
                {
                    sum = sum + (ch - basech1);                 
                }
            }           
        }

        int []base2 = new int[32];
        int i = 0;
        while (sum != 0)
        {
            base2[i++] = sum % 2;  
            sum = sum / 2;          
        }

        for (int j = base2.length - 1; j >= 0; j--)
        {
            System.out.print(j);        
        }

        in.close();
    }

}


输入 PAT (Basic), debug看测试i = 3时,ch = str.CharAt(i) ,判断是不是空格,我用的
是'\0', if ( ch != '\0' && ch != '(' && ch != ')'), 还是进入了循环内,想问该怎么改?

 ch != ' '
这才是判断空格

我去,你那个不是判断是否为空,你这样写
if(ch !=null$$!"".length){
//接着写
}
//我没明白什么叫不等于空格,但我看你的意思应该是不等于空,不等于空字符串。所以我是这样写的
//如果你非要不等于空格的话那就是这样
if(ch !=""){}//在单引号中加个空格就是不等于空格,你试试,还有char类型才用单引号,你明显在调用方法,为啥用单引号,以后用双引号吧
char a ='';但不是char尽量不要用单引号,判断非空就是刚开始那一个