我在java中有一个关于不可变通用二进制搜索树的学校作业。我已经实现了所有基本的BST函数,但是我们还要求创建一个saveInOrder函数,该函数接受一个类型为Entry的通用数组,该函数应该在函数中修改,以按照其键值的顺序包含所有条目。 / p>
我们有一个实现的接口,在该接口中有一个方法签名
public void saveInOrder(Entry<Key,Value> a[]);
我很困惑为什么[]括号在'a'之后?不应该是
Entry<Key,Value>[] a?
此外,传递给此函数的数组是否已定义大小?我用谷歌搜索通用数组,并意识到它们是一个棘手的话题。任何解释都会非常感谢!对不起,如果它有点含糊不清
答案 0 :(得分:0)
在Java中,括号可以在变量名之前或之后(两者在语义上等效)。它也可以写成
public void saveInOrder(Entry<Key,Value>[] a);
此外,传递给此函数的数组是否已定义大小?
是。 JLS-10.3. Array Creation说(部分)
数组的长度以
final
实例变量length
的形式提供。