我尝试了以下方法,但 Eclipse 为此抛出了一个错误。
while((s.charAt(j)== null)
检查字符是否为 的正确方法是null什么?
在进行任何字符检查之前检查是否String s不是。null返回的字符String#charAt是原始char类型,永远不会是null:
if (s != null) {
...
如果您尝试String一次处理一个字符,您可以使用:
for (char c: s.toCharArray()) {
// do stuff with char c
}
(与 不同C,NULLJava 中不进行终结符检查。)
char 原语的默认值是 0 ,作为它的 ascii 值。您可以检查 char 是否为空。例如:
char ch[] = new char[20]; //here the whole array will be initialized with '\u0000' i.e. 0
if((int)ch[0]==0){
System.out.println("char is null");
}
这里char实际上描述了正确的检查方法。
它指出:
将其更改为:
if(position[i][j] == 0)每个char都可以与int. 数组元素的默认值为'\u0000'0 。char我猜这正是你所说的空单元格的意思。
您可以使用空字符 ( '\0'):
while((s.charAt(j)=='\0')
如果s是字符串并且不为空,那么您必须尝试将“空格”与字符进行比较。你认为“空间”不是一个字符,而空间只是null,但事实是空间是一个字符。因此,代替null,使用(这是一个空格)与字符进行比较。