如何将数组中的元素复制到子数组中

时间:2015-08-29 13:44:42

标签: java arrays grouping

我正在尝试为足球锦标赛进行分组,但我不知道如何从主阵列复制到子阵列。

string [] groupings = {Arsenal, Chelsea, Barcelona, Real Madrid, Valencia, Juventus, Manchester United, Liverpool}

我希望它能以这样的方式选择前四个并放入第一组,最后四个放在另一组中。 e.g

string [] group 1={ Arsenal, Chelsea, Barcelona, Real Madrid }
String [] group 2={Valencia, Juventus, Manchester United, Liverpool}

任何人都可以帮助我,我仍然是编程的新手。

3 个答案:

答案 0 :(得分:4)

使用ArrayscopyOfRange方法。

例如:

        String[] grp1 = Arrays.copyOfRange(groupings, 0, groupings.length / 2);
        String[] grp2 = Arrays.copyOfRange(groupings, groupings.length / 2,
                groupings.length);

        System.out.println(Arrays.toString(grp1));
        System.out.println(Arrays.toString(grp2));

答案 1 :(得分:0)

您可以使用循环。像

string [] groupings = {Arsenal, Chelsea, Barcelona, Real Madrid, Valencia,
                       Juventus, Manchester United, Liverpool};
String[] grp1 = new String[4];
String[] grp2 = new String[4];
for(int i = 0; i<4; i++) {
  grp1[i] = groupings[i];
}
for(int i = 0; i<4; i++) {
  grp2[i] = groupings[4+i];
}

答案 2 :(得分:0)

您可以像这样编写算法......

int main()
{
    #ifdef SOMETHING
     cout << "Something Defined" << endl;
    #endif
    return 0;
}

这将只用一个String[] grp1 = new String[groupings.length/2]; String[] grp2 = new String[groupings.length/2]; for(int i = 0; i<groupings.length/2; i++) { grp1[i] = groupings[i]; grp2[i] = groupings[(groupings.length/2)+i]; } 完成你的任务,这个算法将是动态的,可以为任何给定大小的数组创建2个组(偶数)。