在java中将两个整数数组合并为一个数组

我已经看到了类似的问题而没有提供我正在寻找的答案,所以如果这被视为重复,我会提前道歉。 我正在尝试将数组{1,2,3}和{4,5,6}组合成{1,2,3,4,5,6}。 我做错了什么? 我是java的新手。 对不起,如果这个问题很愚蠢。

public class combine { public static void main(String[]args){ int[]a = {1, 2, 3}; int[]b = {4, 5, 6}; int[]c = new int[a+b]; for(int i=0; i<a.length; i++) System.out.print(c[i]+" "); } public static int[]merge(int[]a, int[]b){ int[]c = new int[a.length+b.length]; int i; for(i=0; i<a.length; i++) c[i] = a[i]; for(int j=0; j<b.length; j++) c[i++]=b[j]; return c; } } 

代替

 int[]c = new int[a+b]; 

您需要调用merge方法并将结果分配给数组,如:

 int[]c = merge(a,b); 

你的循环也应该是:

 int[]c = merge(a,b); for(int i=0; i 

不要自己动手,使用System.arrayCopy()将两个数组复制到组合大小的新数组中。 这样效率更高,因为它使用本机操作系统代码。

  String a[] = { "A", "E", "I" }; String b[] = { "O", "U" }; List list = new ArrayList(Arrays.asList(a)); list.addAll(Arrays.asList(b)); Object[] c = list.toArray(); System.out.println(Arrays.toString(c)); 

请尝试此代码,我希望它对您有用

 String a[] = new String[4]; String b[] = new String[2]; String[] ab = new String[a.length + b.length]; int i, j, d, s = 0; @SuppressWarnings("resource") Scanner x = new Scanner(System.in); System.out.println("Enter the first array"); for (i = 0; i < a.length; i++) { a[i] = x.next(); for (d = i; d < a.length; d++) { ab[d] = a[i]; } } System.out.println("Enter the second array"); for (j = 0; j < b.length; j++) { b[j] = x.next(); for (d = a.length + j; d < ab.length; d++) ab[d] = b[j]; } System.out.println(); System.out.println("The new array is !!"); System.out.println("--------------------"); for (s = 0; s < ab.length; s++) { System.out.print(ab[s] + " "); } 

您可以使用以下内容:

 package array; public class Combine { public static void main(String[] args) { int[]a = {1,2,3,4}; int[]b = {4,16,1,2,3,22}; int[]c = new int[a.length+b.length]; int count=0; for(int i=0; i 

看看我的解决方案(如果需要,你最终可以对其进行排序):

 public static int[] mergeAndSortIntArrays(int[] firstInt, int[] secondInt){ List merged = new ArrayList<>(); for (int i=0; i 
  int a[] = { 5, 10, 15, 25 }; int b[] = { 12, 5, 7, 9 }; int c[] = new int[8]; for (int i = 0; i < 4; i++) { System.out.println(a[i]); } System.out.println("**************"); for (int j = 0; j < 4; j++) { System.out.println(b[j]); } //int[] c=merge(a,b); for (int i = 0; i < 4; i++) { c[i] = a[i]; } for (int i = 0; i < 4; i++) { for (int k = 4; k < 8; k++) { c[k] = b[i]; } } for (int i = 0; i < 4; i++) { System.out.println(c[i]); } 
 class MerginTwoArray{ public static void mergingarr(int x[], int y[]) { int len=x.length+y.length; int arr[]=new int[len]; //create a variable j which will begin zeroth index of second array int j=0; for(int i=0; i 

}

希望这对你来说很清楚

  public class MergeArrays { public static void main(String[]args){ int[] a = {1, 2, 3}; int[] b = {4, 5, 6}; int[] c = new int[a.length+b.length];// Here length of int[] c will be 6 int count = 0; //looping to store the value length of i for(int i = 0; i 
 public static void main(String[]args){ int[]a = {1, 2, 3}; int[]b = {4, 5, 6}; int[]c ; c=merge(a,b); for(int i=0; i