我有这样的python代码
x = 2
y = 1
g = 0
open = [[g, x, y]]
我尝试用Java转换它。所以我写下来
ArrayList<ArrayList<Integer>> open = new ArrayList<>();
ArrayList<Integer> open1=new ArrayList<>();
open1.add(g);
open1.add(x);
open1.add(y);
open.add(open1)
这是转换的正确方法吗?我有点困惑。
有几种不同的方法可以做到这一点
您可以使用Arrays(与ArrayLists不同),如下所示:
int[] open = {0, 1, 2};
对于你已经完成的ArrayLists,你使用add方法是正确的,只是不要忘记最后一行的分号:
ArrayList<ArrayList<Integer>> open = new ArrayList<>();
ArrayList<Integer> open1=new ArrayList<>();
open1.add(g);
open1.add(x);
open1.add(y);
open.add(open1);
您还可以执行面向对象的方法并使用链接列表数据结构。链接列表在某些情况下可能非常有效 - 下面是一些关于它们的文档的链接:
https://www.developer.com/java/data/working-with-java-linked-list.html
是的,您正在创建一个二维ArrayList在Java中,一个列表列表,其中包含您指定为通用对象类型的对象类型(在<>符号之间)。
不要忘记在java中用分号结束语句;
在创建列表的“新”对象实例时,您还希望添加泛型类型参数,如下所示:
ArrayList<ArrayList<Integer>> open = new ArrayList<ArrayList<Integer>>();
ArrayList<Integer> open1=new ArrayList<Integer>();