数组内容合并,合并两数组
请你告诉我合并两个数组,你有多少种方法
常见的方法
这是每一个JavaScript入门程序员都知道的方法,使用方式如下:
一些刚接触JavaScript的同学可能会写成这种循环:
不太常见的方法
map方法在这里其实只是起到了遍历数组的作用。
既然map只是起到了遍历数组的作用,那么其他能做到遍历数组的方法例如 every,filter 也是可以的。
扩展运算符是ES6的新功能,它的作用是把对象或数组的元素展开。这也给合并数组提供了一个及其简便的范式。
有其他方式,欢迎你给我留言。
两个数组怎么合并到一起
三种字符数组合并的方法
public static String[] getOneArray() {
String[] a = { "0", "1", "2" };
String[] b = { "0", "1", "2" };
String[] c = new String[a.length + b.length];
for (int j = 0; j a.length; ++j) {
c[j] = a[j];
}
for (int j = 0; j b.length; ++j) {
c[a.length + j] = b[j];
}
return c;
}
public static Object[] getTwoArray() {
String[] a = { "0", "1", "2" };
String[] b = { "0", "1", "2" };
List aL = Arrays.asList(a);
List bL = Arrays.asList(b);
List resultList = new ArrayList();
resultList.addAll(aL);
resultList.addAll(bL);
Object[] result = resultList.toArray();
return result;
}
public static String[] getThreeArray() {
String[] a = { "0", "1", "2", "3" };
String[] b = { "4", "5", "6", "7", "8" };
String[] c = new String[a.length + b.length];
System.arraycopy(a, 0, c, 0, a.length);
System.arraycopy(b, 0, c, a.length, b.length);
return c;
}
java怎么将2个数组的数据合并?
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;ilenght;i++){
if(iaL){//
c[i]=a[i];
}
else{
c[i]=b[i-aL];
}
}
for(int i=0;ic.length;i++){
System.out.print(c[i]+" ");
}
}
Python进行数组合并的方法
python的数组合并在算法题中用到特别多,这里简单总结一下:
假设有a1和a2两个数组:
a1=[1,2,3]
a2=[4,5,6]
1. 直接相加
合并后赋值给新数组a3
a3 = a1 + a2
2. extend
调用此方法,a1会扩展成a1和a2的内容 a1.extend(a2)
3. 列表表达式
先生成新的二维数组) a3 = [a1, a2])
列表推导形成新的数组) a4 = [ y for a in a3 for y in a ])
下面分别测试下三种数组合并方式的性能
分别输出:
17.2916171551
20.8185400963
55.1758739948
可以看出:在数据量大的时候,第一种方式的性能要高出很多。