gpt4 book ai didi

java - 在第三个数组内打印两个数组,该数组的组合长度与前两个数组的长度相同

转载 作者:行者123 更新时间:2023-11-30 06:51:16 24 4
gpt4 key购买 nike

我需要做的是创建第三个动态数组(我想我做到了),它结合了前两个数组的长度,然后打印出这些数组的内容作为第三个数组的输出。

示例:

数组 1:14260

数组 2:36215

数组 3:1426036215

这是我到目前为止所拥有的:

import javax.swing.*;

public class DynamicArray
{
public static void main(String[] args)
{
// User Input - Array length
int arrayLength;
arrayLength = Integer.parseInt(JOptionPane.showInputDialog("Enter Array length:"));

// First dynamic array
int[] dynArray1;
dynArray1 = new int[arrayLength];

for (int i = 0; i < dynArray1.length; i++)
{
dynArray1[i] = (int) (Math.random() * 10);
}

System.out.println("First Array:");

for (int j = 0; j < dynArray1.length; j++)
{
System.out.println(dynArray1[j]);
}

// Second dynamic array
int[] dynArray2;
dynArray2 = new int[arrayLength];

for (int i = 0; i < dynArray2.length; i++)
{
dynArray2[i] = (int) (Math.random() * 10);
}

System.out.println("Second Array:");

for (int j = 0; j < dynArray2.length; j++)
{
System.out.println(dynArray2[j]);
}

// Third dynamic array
int thirdArrayLength = dynArray1.length + dynArray2.length;
int[] dynArray3;
dynArray3 = new int[thirdArrayLength];

for (int i = 0; i < dynArray3.length; i++)
{

}
}
}

我只会打印第一个和第二个,但我认为这会作弊,而且这不是我的作业所要求的。我打算 for 循环 Array1 和 Array2 并打印结果。但我不太确定应该如何去做。任何帮助将不胜感激。

编辑:这个问题已经解决了!下面是代码:

    /* Third dynamic array */
int thirdArrayLength = dynArray1.length + dynArray2.length;
int[] dynArray3;
dynArray3 = new int[thirdArrayLength];

for (int i=0; i < dynArray1.length; i++) {
dynArray3[i] = dynArray1[i];
}
for (int i=0; i < dynArray2.length; ++i) {
dynArray3[i + dynArray1.length] = dynArray2[i];
}

System.out.println("Third Array:");

for (int i=0; i < dynArray3.length; ++i) {
System.out.println(dynArray3[i]);
}

最佳答案

如果您使用的是 Java-8,则可以使用 ArraysSystem.arraycopy :

//your array
int array1[] = {1, 4, 2, 6, 0};
int array2[] = {3, 6, 2, 1, 5};

//create a new array witch have length array1.length + array2.length
int array3[] = new int[array1.length + array2.length];

//copy the first array1 in array3
System.arraycopy(array1, 0, array3, 0, array1.length);
//copy the second array2 in array3
System.arraycopy(array2, 0, array3, array1.length, array2.length);

//display your arrays
System.out.println("Array 1:" + Arrays.toString(array1));
System.out.println("Array 2:" + Arrays.toString(array2));
System.out.println("Array 3:" + Arrays.toString(array3));

输出

Array 1:[1, 4, 2, 6, 0]
Array 2:[3, 6, 2, 1, 5]
Array 3:[1, 4, 2, 6, 0, 3, 6, 2, 1, 5]

关于java - 在第三个数组内打印两个数组,该数组的组合长度与前两个数组的长度相同,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/42721691/

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