Java 我在libgdx里找不到第二具尸体 数组体=新数组(world.getBodyCount()); world.getbodys(); 用于(主体:主体){ 更新(正文); }
好的,首先要分配一个Java 我在libgdx里找不到第二具尸体 数组体=新数组(world.getBodyCount()); world.getbodys(); 用于(主体:主体){ 更新(正文); },java,libgdx,box2d,Java,Libgdx,Box2d,好的,首先要分配一个数组,并确保支持数组适合world.getBodyCount()。因此,如果您的世界中现有的实体数为10,则ArrayList将分配足够的内存来最初存储10个实体,但所有这些条目都将null 然后调用world.getBodys();但是它不能访问局部变量body,它肯定不是静态的;因此,您的数组仍处于未初始化状态 当您进入for循环时,数组为空,因此它执行零次;没有更新任何内容。所以真正的诀窍是你没有正确地访问世界中包含的身体 getbody()是否返回一个您应该使用的列表
数组
,并确保支持数组适合world.getBodyCount()
。因此,如果您的世界中现有的实体数为10,则ArrayList
将分配足够的内存来最初存储10个实体,但所有这些条目都将null
然后调用world.getBodys()
;但是它不能访问局部变量body
,它肯定不是静态的
;因此,您的数组仍处于未初始化状态
当您进入for
循环时,数组
为空,因此它执行零次;没有更新任何内容。所以真正的诀窍是你没有正确地访问世界中包含的身体
getbody()
是否返回一个您应该使用的列表?它是哪一个?java,C++或C?@ AndyTurner,不确定:和<>代码>数组体= new…<代码>也不是C++,所以可能是java。kalpesh请注意,本网站用于提问和回答,不用于语言猜测测验;)
Array<Body> bodies = new Array<Body>(world.getBodyCount());
world.getBodies();
for (Body body : bodies) {
update(body);
}