java怎么将2个数组的数据合并?

concat怎么用?
int a[]={1,7,9,11,13,15,17,19};
int b[]={2,4,6,8,10};

concat()方法是对字符串的操作,不是对整数或数组。

concat()用法:
String a="abc";
String b="edf";
String c=a.concat(b);
c的值为“abcdef"
数组可以用for循环合并:
public static void main(String[] args){
int a[]={1,7,9,11,13,15,17,19};
int b[]={2,4,6,8,10};
int aL=a.length;
int bL=b.length;
int lenght=aL+bL;
int[] c=new int[lenght];
for(int i=0;i<lenght;i++){
if(i<aL){//
c[i]=a[i];
}
else{
c[i]=b[i-aL];
}
}
for(int i=0;i<c.length;i++){
System.out.print(c[i]+" ");
}
}
温馨提示:答案为网友推荐,仅供参考
第1个回答  2014-12-24

不记得有可以合并两个数组的方法,感觉基本只能手动了,如:

int index=0;
int c[]=new int[a.length+b.length];
for(int i=0;i<a.length;i++){
    c[index++]=a[i];
}
for(int i=0;i<b.length;i++){
   c[index++]=b[i];
}

追问

运行错误

追答public class Test {

 public static void main(String[] args) {

  int a[]={1,7,9,11,13,15,17,19};

  int b[]={2,4,6,8,10};

  int index=0; 

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

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

      c[index++]=a[i]; 

  } 

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

     c[index++]=b[i]; 

  }

  //打印合并后的数组C

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

   System.out.print("c["+i+"]="+c[i]+" ");

  }

 }

本回答被提问者和网友采纳
第2个回答  2014-12-24
int a[]={1,7,9,11,13,15,17,19};
int b[]={2,4,6,8,10};

ArrayList<Integer> alist=new ArrayList<Integer>(a.length+b.length);

for (int j = 0; j < a.length; j++) {
alist.add(a[j]);
}
for (int k = 0; k < b.length; k++) {
alist.add(b[k]);
}
int c[] =new int[alist.size()];
for(int i=0; i<alist.size();i++)
{
c[i]=alist.get(i);
}
第3个回答  2014-12-24
concat是String类型的,无法在integer型数组上使用
相似回答