0

我正在浏览 salesforce.com 开发人员文档

代码链接

在这部分代码中,为什么要执行 (referenceTos[0] != null) 检查?

        // Determine whether this is a reference field
        if (field.getType() == FieldType.reference)
        {                            
            // Determine whether this field refers to another object
            String[] referenceTos = field.getReferenceTo();
            if (referenceTos != null && referenceTos[0] != null)
            {
                System.out.println("\t\tField references the following objects:");
                for (int k = 0; k < referenceTos.length; k++)
                {
                    System.out.println("\t\t\t" + referenceTos[k]);
                }
            }
      }
4

3 回答 3

1

java数组可以容纳0个元素。

因为referenceTos[0]在那里检查,因为有时它可能不是null,但它是空的。

于 2013-06-14T13:43:08.203 回答
0

确定数组中至少有一个值。由于数组可能从索引 0 开始填充,因此具有非空值意味着该数组至少包含一个值。如果索引 0 的值为 null,则表示数组为空,不需要下一段代码。

于 2013-06-14T13:43:08.260 回答
0

Field references the following objects:答案是如果 null 来了,他们不想打印东西。referenceTos != null并不意味着元素不为空,它只是意味着数组本身不为空。

如果您删除了该条件,U 最终可能会得到(没有 for each 循环):

Field references the following objects:

这就是为什么要检查不为空数组的第一个元素不为空的原因。

于 2013-06-14T13:52:20.553 回答