This question already has answers here:
Merge two lists into one “2 dimensional” list in java [duplicate]
                                
                                    (3个答案)
                                
                        
                        
                            How to merge two arrays in Java?
                                
                                    (3个答案)
                                
                        
                        
                            How to zip two Java Lists
                                
                                    (10个回答)
                                
                        
                        
                            How to Iterate through two ArrayLists Simultaneously? [duplicate]
                                
                                    (6个答案)
                                
                        
                        
                            Using Java8 Streams to create a list of objects from another two lists
                                
                                    (3个答案)
                                
                        
                                3个月前关闭。
            
                    
我对Java非常陌生,目前正在尝试在Java中重新创建一些python代码。这是我的问题:

我有2个不同的变量:

    ArrayList <Double> x_loc= new ArrayList<>();
    ArrayList <Double> y_loc= new ArrayList<>();


它们都代表坐标。我的目标是现在同时创建一个二维数组,这样我就可以拥有类似于array([[x1,y1],[x2,y2],...])的东西。

我考虑过创建一个新的ArrayList,然后添加每个单独的项目:

ArrayList<Double[]> data_fin = new ArrayList<>();
data_fin.add(x_loc)


但是,这不起作用。我知道我可能在做一些非常愚蠢的事情,但是作为一个新手,我非常感谢您的帮助。谢谢!

最佳答案

您必须遍历原始的List才能填充组合的List

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)});
}


也可以使用Stream来完成:

List<Double[]> data_fin = IntStream.range(0,x_loc.size())
                                   .mapToObj(i -> new Double[] {x_loc.get(i),y_loc.get(i)})
                                   .collect(Collectors.toList());


(这里我假设两个输入List的大小都相同)。

关于java - 尝试从两个现有数组创建二维数组,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/58937165/

10-08 22:31
查看更多