【发布时间】:2019-10-10 16:55:22
【问题描述】:
这是我的第一个 java 项目。
我正在尝试在 Java 中创建一个 3D 数组,但直到现在都没有这样做。
我尝试了多种方法来创建 3d 数组。我声明了一个 3d 字符串数组并尝试向其中添加元素,但它不起作用。我还创建了一个 POJO 类,但我不确定如何在其中添加元素。
{"data":[[{"i1":"1","i2":"2","i3":"3","i4":"4"},{"i1":"5","i2":"6","i3":"7","i4":"8"}],[{"i1":"1","i2":"2","i3":"3","i4":"4"},{"i1":"5","i2":"6","i3":"7","i4":"8"}]]}
我正在调用一个向我返回一些数据的 API。现在我想创建一个 3D 数组,以便在前端循环遍历它。
我试过这个:
String[][][] array = new String[100][][];
如果我这样做:
array[0][0]["i1"] = "1";
我收到错误,String 无法转换为 int。
我还创建了一个 POJO 类:
public class Response
{
private Data[][] data;
public Data[][] getData ()
{
return data;
}
public void setData (Data[][] data)
{
this.data= data;
}
@Override
public String toString()
{
return "ClassPojo [data= "+data+"]";
}
}
public class Data
{
private String i1;
private String i2;
private String i3;
private String i4;
public String getI1 ()
{
return i1;
}
public void setI1 (String i1)
{
this.i1 = i1;
}
public String getI2 ()
{
return i2;
}
public void setI2 (String i2)
{
this.i2 = i2;
}
public String getI3 ()
{
return i3;
}
public void setI3 (String i3)
{
this.i3 = i3;
}
public String getI4 ()
{
return i4;
}
public void setI4 (String i4)
{
this.i4 = i4;
}
@Override
public String toString()
{
return "ClassPojo [i1 = "+i1+", i2 = "+i2+", i3 = "+i3+", i4 = "+i4+"]";
}
}
但我不明白如何使用这个类。
请帮助/指导我解决这个问题。
谢谢
【问题讨论】:
-
array[0][0]["i1"] -> 在 [ ] 之间,您应该将索引(只能是 int)而不是值
-
那么我应该怎么做才能制作一个 3d 数组,或者你能告诉我如何使用 POJO 类共享吗?
-
您已经有一个“3D”数组。你只需要弄清楚如何使用它们。和使用普通数组完全一样。
-
你能帮帮我吗?
-
String[][][] array = new String[100][][]; -> 你做到了,所以你的数组不能有元素(有点奇怪)。试试这个: String[][][] array = new String[100][100][100]; (或者,更小的数字)
标签: java arrays spring arraylist multidimensional-array