我正在开发一个游戏为Android 这个游戏读取一个int []数组,并形成一个地图出来的把两个数组一起
现在我想随机较小的阵列添加到这个阵列 但我怎么能我没有做做任何线索
我已经在这里搜查,如果您需要做很多次阵列是不是一个很好的选择,我没有找到一个好的解决办法
我正在开发一个游戏为Android 这个游戏读取一个int []数组,并形成一个地图出来的把两个数组一起
现在我想随机较小的阵列添加到这个阵列 但我怎么能我没有做做任何线索
我已经在这里搜查,如果您需要做很多次阵列是不是一个很好的选择,我没有找到一个好的解决办法
,因为他们有固定的大小并且每次增加尺寸时都必须重新分配。另外,您必须将旧数组中的值复制到新的更大的数组中。
看看到ArrayList<Integer>
代替。
如果它是你的时间只是做一些事情时,你应该这样做以下
int[] oldArray = new int[Y];
int[] smallArray = new int[X];
int[] newArray = Arrays.copyOf(oldArray,X+Y);
for (int i = Y; i < X+Y; ++i)
newArray[i] = smallArray[i-Y];
什么为Y/X? – user1293780 2012-04-09 09:43:47
它们是阵列的大小 – Jack 2012-04-09 14:01:43
在Java数组的大小不会改变。您必须创建新的更大/更小的数据并复制数据。 This可能会有帮助。
可以使用
Vector<String> vec = new Vector<String>();
vec.add("a");
vec.add("b);
想这是你的老向量(或阵列)有两个数据。如果你想添加更多的数据或要添加其他阵列然后
。
for(int i=0;i<arr.length;i++)
{
vec.add(arr[i]);
}
你也可以使用
int i=vec.size();
你的意思是你想较小阵列中追加到地图数组的末尾,或将它们复制到地图数组在随机偏移得到向量的长度? – ravuya 2012-04-08 18:42:43
多数民众赞成在这正是我的意思 – user1293780 2012-04-08 18:44:49
正确的术语搜索,也许,“如何连接Java数组”,并找到适当的解决方案,我猜:http://stackoverflow.com/questions/80476/how-to -concatenate-two-arrays-in-java如果使用索引进行游戏,则可以将第二个数组插入到其他位置,而不是只在末尾添加它。 – 2012-04-08 19:04:57