@edit IT 工作,感谢您的回答:) 我想我的错误是当我认为
WORLD[i]=global.Values.CHUNKPATTERN();
只需获取右侧的对象,克隆其值,并将它们分配给左侧的部分,而事实证明它在两者之间建立了引用。再次感谢:)
我有简单的初学者/新手数组问题:
for(int i=0; i<global.Values.WORLDVOLUME(); i++)
// global.Values.WORLDVOLUME() --> const, int. always the same.
{
WORLD[i]=global.Values.CHUNKPATTERN(); //to pre-define as 'zero only' object. Always the same. Const.
WORLD[i].chunknr=i+1;
}
System.out.println(WORLD[4].chunknr);
当然,我想要WORLD[0]
chunknr 1,WORLD[4]
chunnr 为 5 等等。
相反WORLD[i].chunknr=i+1;
,似乎更新了所有元素的 chunknr (不仅WORLD[i]
)。所以它看起来像WORLD[0].chunknr = WORLD[1].chunknr=global.Values.WORLDVOLUME()
这里。任何人都知道如何绕过它?我相信有一个简单的解决方案......我是否正确理解了对象数组?
你可以喜欢(前提是你有类和构造函数)
Point POINTARRAY[]= new Point[10];
POINTARRAY[1].x=5
POINTARRAY[1].y=6
POINTARRAY[3].x=17
POINTARRAY[3].y=1
正确的?如何通过循环分配它?