有没有一种简单的方法,比如一行代码,可以将两个 double 类型的数组组合成一个数组?
如果没有,最简单的方法是什么?
谢谢
您可能正在寻找System.arrayCopy()方法
如果您可以自由使用 Apace commons,这就是解决方案。
或者你可以这样写:
public static double[] unite(double[]... arrays)
{
int length = 0;
for(double[] array: arrays)
length += array.length;
double[] united = new double[length];
int pos = 0;
for(double[] array: arrays) {
System.arraycopy(array, 0, united, pos, array.length);
pos += array.length;
}
return united;
}
public static void main(String... args) {
double[] d1 = {0.1, 0.2};
double[] d2 = {0.3, 0.4, 0.5};
double[] d3 = {0.6, 0.7, 0.8, 0.9};
double[] d4 = {};
double[] d5 = {1.0};
double[] united = unite(d1, d2, d3, d4, d5);
System.out.println(Arrays.toString(united));
}
不能为这种事情推荐 Google Guava 库