对于用java编写的迷你游戏,我有一个主级别和一个后台级别。玩家只能在邮件层面走动,而背景水平仅用于装饰。我编写了一个检查所有可见背景图块的方法,并将这些图块的坐标放在int [] [] []中。阵列是三维的,因为背景也是三维的。因为背景并不总是可见的,所以我认为通过首先检查是否可见单个背景图块,我可以节省相当多的处理时间。换句话说,检查包含所有可见背景图块的数组是否具有在任何插槽中写入的任何值。当一个图块可见时,该数组中的坐标变为1,否则,它保持默认值(我认为是0)。你们知道一个有效检查数组是否包含值的好方法,所以程序不必浏览每个插槽,每秒60次?
答案 0 :(得分:0)
如果你不想每次都通过整个阵列,那么你可以保留一个标志或类似物,告诉你是否有任何可见。
即使你应该有足够的计算能力每秒60次通过阵列:)
答案 1 :(得分:0)
我认为没有一种内置机制来检查Java中的数组是否完全为空。但是,除非您的阵列非常庞大,否则不应低估您的计算机;它不应该真正需要太多的处理能力来检查阵列每秒60次。
或者,您可以维护count
属性或类似的东西;每当将数组元素更改为1时递增它,并在将元素设置回null
时递减它。只要count
为0,就可以假设数组为空。
另外,需要注意的是,在Java中,数组插槽初始化为null
,而不是0.