为什么(referenceTos [0]!= null)检查正在执行以下代码?

时间:2013-06-14 13:40:49

标签: java salesforce

我正在阅读salesforce.com开发人员文档

code link

在这部分代码中,为什么(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]);
                }
            }
      }

3 个答案:

答案 0 :(得分:1)

java数组可以包含0个元素。

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

答案 1 :(得分:0)

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

答案 2 :(得分:0)

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

如果您删除了这个条件,U可能最终得到(没有为每个循环):

Field references the following objects:

这就是为什么它存在,检查非null数组的第一个元素不为null。