首页 > 解决方案 > 为什么以及如何编译这个奇怪的方法返回类型?

问题描述

以下方法的返回类型为int[][]. 请注意其中一个[]' 是如何位于 ' 的右侧()的。

为什么这行得通,这种行为叫什么?

int[] numbers () [] {
    return null;
}

标签: javalanguage-lawyer

解决方案


来自JLS

返回数组的方法的声明允许在形式参数列表之后放置部分或全部表示数组类型的括号对。支持此语法是为了与早期版本的 Java 编程语言兼容。强烈建议不要在新代码中使用此语法。


推荐阅读