Java 如何从ArrayList中的数组打印单个元素

Java 如何从ArrayList中的数组打印单个元素,java,arrays,arraylist,Java,Arrays,Arraylist,我在ArrayList中有一个数组,我想单独访问数组中的每个元素以使用它们。 我的代码不起作用: ArrayList<int[]> freeSpot = new ArrayList<int[]>(); for (int x = 0; x < 3; x++) { for (int y = 0; y < 3; y++) { freeSpot.add(new int[]{x, y}); } }

我在ArrayList中有一个数组,我想单独访问数组中的每个元素以使用它们。 我的代码不起作用:

ArrayList<int[]> freeSpot = new ArrayList<int[]>();

    for (int x = 0; x < 3; x++) {
        for (int y = 0; y < 3; y++) {
            freeSpot.add(new int[]{x, y});
        }
    }

    System.out.println(freeSpot.get(int[0]));
ArrayList freeSpot=new ArrayList();
对于(int x=0;x<3;x++){
对于(int y=0;y<3;y++){
freeSpot.add(新的int[]{x,y});
}
}
System.out.println(freeSpot.get(int[0]);

希望有人能帮忙!谢谢。

您应该执行以下操作:

 System.out.println(freeSpot.get(x)[y]);
其中
x
是列表的索引,而
y
是数组的索引

例如:

要获取列表第一个元素的数组的第一个元素,请执行以下操作:

System.out.println(freeSpot.get(0)[0]);
 System.out.println(freeSpot.get(0)[1]);
要获取列表第一个元素的数组的第二个元素,请执行以下操作:

System.out.println(freeSpot.get(0)[0]);
 System.out.println(freeSpot.get(0)[1]);

您应该执行以下操作:

 System.out.println(freeSpot.get(x)[y]);
其中
x
是列表的索引,而
y
是数组的索引

例如:

要获取列表第一个元素的数组的第一个元素,请执行以下操作:

System.out.println(freeSpot.get(0)[0]);
 System.out.println(freeSpot.get(0)[1]);
要获取列表第一个元素的数组的第二个元素,请执行以下操作:

System.out.println(freeSpot.get(0)[0]);
 System.out.println(freeSpot.get(0)[1]);

略有不同的做法:

List<Integer[]> freeSpot = new ArrayList<>();

for (int x = 0; x < 3; x++) {
    for (int y = 0; y < 3; y++) {
        freeSpot.add(new Integer[]{x, y});
    }
}

for(Integer[] entry : freeSpot) {
    System.out.println("x: " + entry[0] + " y: " + entry[1]);
}
List freeSpot=new ArrayList();
对于(int x=0;x<3;x++){
对于(int y=0;y<3;y++){
add(新整数[]{x,y});
}
}
for(整数[]项:freeSpot){
System.out.println(“x:+entry[0]+”y:+entry[1]);
}

方法稍有不同:

List<Integer[]> freeSpot = new ArrayList<>();

for (int x = 0; x < 3; x++) {
    for (int y = 0; y < 3; y++) {
        freeSpot.add(new Integer[]{x, y});
    }
}

for(Integer[] entry : freeSpot) {
    System.out.println("x: " + entry[0] + " y: " + entry[1]);
}
List freeSpot=new ArrayList();
对于(int x=0;x<3;x++){
对于(int y=0;y<3;y++){
add(新整数[]{x,y});
}
}
for(整数[]项:freeSpot){
System.out.println(“x:+entry[0]+”y:+entry[1]);
}

你的意思是
freeSpot.get(0)
System.out.println(Arrays.toString(freeSpot.get(0))
System.out.println(freeSpot.get(0)[0])
你的意思是
freeSpot.get(0)
System.out.println(Arrays.toString(freeSpot.get(0))
System.out.println(freeSpot.get(0)[0])get(0)[1]和get(0)[2]应该是get(0)[0]和get(0)[1],我还不能编辑。哈哈,我也犯了同样的错误。get(0)[1]和get(0)[2]应该是get(0)[0]和get(0)[1]我还不能编辑。哈哈,我也犯了同样的错误。