gpt4 book ai didi

java - 如何在 1 个循环中合并 2 个数组?

转载 作者:行者123 更新时间:2023-11-29 07:26:25 25 4
gpt4 key购买 nike

我被告知要做

void mergeArrays(int[] ar1 , int[] ar2)

对于这样的输入:

int[] ar1 = {1,2,3,4}
int[] ar2 = {5,6,7,8}

这是我的代码:

 public static void mergeArray(int[] ar1 , int[] ar2)    {
int[] res = new int[ar1.length+ar2.length];
int counter = 0;
for(int a = 0; a<ar1.length; a++)
{
res[a] = ar1[a];
counter++;
}
for(int b = 0; b<ar2.length; b++)
{
res[counter++] = ar2[b];
}
for(int temp = 0; temp<res.length;temp++)
{
System.out.print(res[temp]+" ");
}

输出12345678

这是使用 2 个循环完成的。现在,我如何使用单个循环完成它?

最佳答案

是的,你可以在一个循环中完成,

        int len = arr1.length + arr2.length;
int[] res = new int[len];

for(int i=0, j=0; i<len; i++) {
if(i<arr1.length){
res[i] = arr1[i];
}else{
res[i] = arr2[j];
j++;

}
}

当两个数组的长度不同时,这也适用。

关于java - 如何在 1 个循环中合并 2 个数组?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/51863423/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com