所以我发现Java允许我们创建大小为0的数组。这是否意味着数组同时是空的和完整的?我在处理基于数组的优先级队列实现时想到了这一点。在调用方法检查时,它是否正确且是空的并且是完整的?或者我不应该允许创建大小为0的数组?感谢。
答案 0 :(得分:0)
Java数组没有full或empty的定义。考虑
int[] foo = {0};
int[] bar = new int[1];
foo
是否已满,因为它的值已分配给其唯一位置?
bar
是否为空,因为它没有分配值?
两个数组都相同,它们都存储了一个值,在两种情况下都包含值0。
完全意味着您无法再添加任何项目,您永远不能将新项目添加到Java数组,只需替换现有项目,因此所有数组都已满或完整对于Java数组没有意义。我说这是第二个。