Java 如何检查字符是否为空

Java 如何检查字符是否为空,java,android,Java,Android,我想检查字符是否为空?但是为什么这个代码不起作用呢letterChar==null也不工作。我在谷歌上搜索了很多问题,但没有找到任何解决方案,大多数解决方案都是关于String String letter = enterletter.getText().toString(); char letterChar = letter.charAt(0); if(letterChar == ' ' || letterChar == NULL) // this is where the code won

我想检查字符是否为空?但是为什么这个代码不起作用呢
letterChar==null
也不工作。我在谷歌上搜索了很多问题,但没有找到任何解决方案,大多数解决方案都是关于
String

String letter = enterletter.getText().toString();
char letterChar = letter.charAt(0);


if(letterChar == ' ' || letterChar == NULL) // this is where the code won't works
{
    Toast.makeText(getApplicationContext(), "Please enter a letter!", Toast.LENGTH_LONG).show();
}

char
不能是
null
,因为它是一个原语,所以您无法检查它是否等于
null
,您必须找到解决方法

您还想检查
letterChar==''
是空格还是空字符串吗?因为你有一个空间

前两个答案可能有助于您首先检查
字符串字母
是否为空


char-letterChar
转换为int并检查它是否等于
0
,因为char的默认值是
\u0000
-(ascii表上的nul字符,而不是当您说
letterChar==null
时要检查的null引用)-当从您的代码中转换为
0

时,看起来您使用的是Unicode,您搜索的方法是进入字符类(java.lang)

它还包含许多有用的静态方法,可以满足您的需要。 如果是,代码将被删除

String letter = enterletter.getText().toString();
char letterChar = letter.charAt(0);

if(!Character.isLetter(letterChar))
{
    Toast.makeText(getApplicationContext(), "Please enter a letter!", Toast.LENGTH_LONG).show();
}
但是如果我需要回答您的问题(不考虑您的目标),那么您需要的代码取决于您所说的“is char null”是什么意思

在Java中,字符不能为==null。 如果要检查它是否为空空间,则需要执行以下操作

 if (ch == ' ')
如果要检查是否没有线路断路器(空格、HT、VT、CR、NL和其他),应在上述建议的基础上添加以下内容:

if (ch == ' ' || ch == '\t' || ch == '\r' || ch == '\n' || ch == '\x0b')

char是一种基本数据类型,因此不能用于检查null

对于你的情况,你可以这样检查

        if (letterChar  == 0) //will be checked implicitly
        {
            System.out.println("null");
        }
        //or use this
        if (letterChar  == '\0')
        {
            System.out.println("null");
        }

烧焦为什么不使用字符串?@statosdotcom,因为我希望用户只输入字符。您可以通过以下方式获得结果:
string letter=enterletter.getText().toString().trim()//这将删除空白
如果(letter.length()@burger,请检查下面的答案,它将起作用。
        if (letterChar  == 0) //will be checked implicitly
        {
            System.out.println("null");
        }
        //or use this
        if (letterChar  == '\0')
        {
            System.out.println("null");
        }