-4

我编写了这段代码来控制 char[] 是否为空。

char[] xxx = new char[9]; 

for (int i = 0; i < 9; ++i)
        {
            if (xxx[i]==null)   
            {
                xxx[i]=i; 
            }
 }
4

4 回答 4

3

a 的每个元素char[]都是 a char,它是一个原始类型。原始类型不能null,因此您的比较将永远不会返回true。如果你更多地说明你想要完成的事情,你可能会得到一些关于如何去做的有用建议。

于 2012-04-27T15:47:45.413 回答
2

char[]的例子是什么?如果_board是 achar[]那么您正在检查其中一个是否char为空,字符不能为空,因为 char 是原始类型。

我猜你应该这样做

if (_board == null)
于 2012-04-27T15:47:49.633 回答
1

if (xxx[i]==0) 此代码有效。0 表示 in char 为 null。试试吧。

于 2012-04-27T15:48:53.917 回答
0

您以令人困惑的方式使用“控制”一词。

您的代码将测试是否_board[i]为空。从这个意义上说是正确的。如果它可能会失败

  • _board没有定义。
  • i没有定义。
  • _board不是数组
  • _board不是对象数组(只有对象引用可以为空)

_board[i]如果不为空,它将“工作”但不会“做任何事情” 。

于 2012-04-27T15:49:00.417 回答