gpt4 book ai didi

java - 创建对象元素时,为对象数组标识符添加什么?

转载 作者:行者123 更新时间:2023-12-01 04:23:55 25 4
gpt4 key购买 nike

想象一个对象数组。

int MAX_ALLOWED = 5;
Object [] object = new Object [MAX_ALLOWED];

假设该对象是游戏的一个单位及其各自的位置。当用户按下名为“生成单位”的按钮时,代码将为:

 unit [] = new Object (location);

正如您所看到的,[ _ ] 中没有标识符,因此这就出现了问题。我不知道要在这里放什么。如果我放 0,那么每次创建对象时都会覆盖 0 处对象的内存。

访问特定对象或单元时。

for (int i = 0; i <= unit.length; i++)
{
if (location = unit [i].get_Location)
{
move (unit [i]);
}
}

但是如果我访问 0 之后的元素,这样做会给我一个空指针异常。

最佳答案

对于存储事物列表的一般问题,应避免使用数组。相反,集合对程序员更加友好,而且速度仍然相当快。

在您的情况下,使用数组意味着必须保留最后使用的元素的索引并管理大小等。使用 List 更容易:

List<Unit> units = new ArrayList<Unit>();

然后使用,简单:

units.add(new Unit());

如果您想限制大小,请在添加之前:

if (units.size() == MAX_ALLOWED) {
// do something else
}

迭代元素:

for (Unit unit : units) {
// do something with unit
}

列表的一个好处是它们会根据需要增加大小,尽管在您的情况下可能不需要这样做,因为您似乎想要一个固定的最大值。

关于java - 创建对象元素时,为对象数组标识符添加什么?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/18670110/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com