Java 尝试从两个现有阵列创建二维阵列
我对java非常陌生,目前正在尝试用java重新创建一些python代码。这是我的问题: 我有两个不同的变量:Java 尝试从两个现有阵列创建二维阵列,java,arrays,multidimensional-array,Java,Arrays,Multidimensional Array,我对java非常陌生,目前正在尝试用java重新创建一些python代码。这是我的问题: 我有两个不同的变量: ArrayList <Double> x_loc= new ArrayList<>(); ArrayList <Double> y_loc= new ArrayList<>(); ArrayList x_loc=new ArrayList(); ArrayList y_loc=新的ArrayList(); 它们都代表坐
ArrayList <Double> x_loc= new ArrayList<>();
ArrayList <Double> y_loc= new ArrayList<>();
ArrayList x_loc=new ArrayList();
ArrayList y_loc=新的ArrayList();
它们都代表坐标。我的目标是现在用它们创建一个二维数组,这样我就可以得到类似数组的东西([[x1,y1],[x2,y2],…])
我考虑创建一个新的ArrayList,然后添加每个单独的项目:
ArrayList<Double[]> data_fin = new ArrayList<>();
data_fin.add(x_loc)
ArrayList data_fin=new ArrayList();
数据补充(x位置)
然而,这不起作用。我知道我可能在做一些非常愚蠢的事情,但作为一个新手,我真的非常感谢你的帮助。谢谢 您必须迭代原始
列表
s以填充组合的列表
:
for (int i = 0; i < x_loc.size() && i < y_loc.size(); i++) {
data_fin.add (new Double[]{x_loc.get(i),y_loc.get(i)});
}
(这里我假设两个输入
列表
大小相同)。您必须迭代原始列表
才能填充组合的列表
:
for (int i = 0; i < x_loc.size() && i < y_loc.size(); i++) {
data_fin.add (new Double[]{x_loc.get(i),y_loc.get(i)});
}
(这里我假设两个输入
列表的大小相同)。为什么不创建一个包含两个坐标值的类?我建议使用double[]
overdouble[]
。不过,我认为创建一个新类是更好的解决方案。或者你可以使用zip
操作符:你也可以使用类似列表的双列表。这会创建一个二维列表,并且你不会有两个分开的数组之间索引匹配的复杂性。为什么不创建一个包含两个坐标值的类呢?我建议使用double[]
overdouble[]
。不过,我认为创建一个新类是更好的解决方案。或者你可以使用zip
操作符:你也可以使用类似于list的双列表这会创建一个二维列表,并且你不会有两个分离数组之间索引匹配的复杂性