让我想出一个例子。 我有一群人(比如10号)。 男性可以占据0到4的指数,女性可以占据指数5到9。 我如何确保数组的后半部分(对于女性)是一个圆形数组。我该如何添加到此。
通常,对于循环我会这样做:
index = index % size;
people[index] = person;
如何确保阵列在每一半中分别为圆形?
答案 0 :(得分:0)
您可以根据数组的大小简单地使用添加。如果你不知道确切的大小,但你知道比例,你可以做一些数学来得到它。
例如,如果数组中有x个人,一半是男性,一半是女性,你会做这样的事情:
menIndex = index % (array.length - (array.length / 2));
womenIndex = (index % array.length) + (array.length / 2);
menIndex
检查索引是否超过整个数组的中间点。
womenIndex
检查索引是否到达数组的末尾,然后将数组的一半值加回到数组的一半的开头
你真的应该使用2个单独的数组,如果你可以像上面的rupesh评论那样。