0

我有以下代码:

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”之类的数组(空格实际上是一个制表符)。当数组的大小是要打印的东西的数量时,此代码可以完美运行,但如果数组是例如 100 并且我只有 20 个元素,则会引发错误。我需要数组是这个大小。谢谢你。

抱歉,如果我没有说得足够清楚。

4

1 回答 1

4

你不能null在打印之前检查元素是否存在吗?

for (int i = 0; i < directory.length - 1; i++) {
    if (directory[i] != null) {
        System.out.format(formatString, (Object[]) directory[i].split("\t"));
    }
}
于 2014-02-27T19:34:36.890 回答