从阵列打印时出现异常

时间:2014-02-27 19:32:45

标签: java arrays formatting string-formatting system.printing

我有以下代码:

public void Print() {
        String formatString = "%12s %7s %9s\n";
        System.out.format(formatString, "Surname", "Initial", "Extension");
        for (int i = 0; i < directory.length - 1; i++) {
            System.out.format(formatString, (Object[]) directory[i].split("\t"));
        }

    }

这段代码的目的是制作一个包含类似“Smith i 0472”(该空间实际上是一个标签)的数组。当Array的大小是要打印的东西的数量时,如果数组是100,并且我只有20个元素,则此代码可以正常工作。我需要这个数组的数组。谢谢。

很抱歉,如果我没有说清楚这一点。

1 个答案:

答案 0 :(得分:4)

您不能在打印前检查元素是否为null吗?

for (int i = 0; i < directory.length - 1; i++) {
    if (directory[i] != null) {
        System.out.format(formatString, (Object[]) directory[i].split("\t"));
    }
}