java多维数组声明1*3维?

java多维数组声明1*3维?,java,multidimensional-array,declaration,Java,Multidimensional Array,Declaration,大家好,我是java新手。在研究了我所面临的问题之后,我试着发帖问一些问题 最近我在做一个文本分析软件。 我试着完成一个1*3维的数组。 差不多 [0] [][][] [1] [][][] [2] [][][] [3] [][][] 每个维度的第二个维度中的三列用于保存第一个维度的详细信息。 但是第二维度数组的大小仍然未知,这意味着,我不知道我将从我要搜索的文本中找到多少。一旦找到目标,它将增加。 这是做这件事的愚蠢方式吗。 我知道java可以声明数组,比如int[]

大家好,我是java新手。在研究了我所面临的问题之后,我试着发帖问一些问题

最近我在做一个文本分析软件。 我试着完成一个1*3维的数组。 差不多

[0]
   [][][]
[1]
   [][][]
[2] 
   [][][]
[3]
   [][][]
每个维度的第二个维度中的三列用于保存第一个维度的详细信息。 但是第二维度数组的大小仍然未知,这意味着,我不知道我将从我要搜索的文本中找到多少。一旦找到目标,它将增加。 这是做这件事的愚蠢方式吗。 我知道java可以声明数组,比如int[][]abc=new[5][]。 但它只能声明一个未知维度。 然后我试着做这样的事情

String [] abc = new string [4]
然后我首先假设尺寸是第二维度第一列中的尺寸

abc[0] = String [10][][] inside1;
abc[1] = String [10][][] inside2;
abc[2] = String [10][][] inside3;
abc[3] = String [10][][] inside4;
但编译时仍然会出错

我如何做申报,或者有更好的方法来做这件事。
如果我错过了互联网上关于这个的任何帖子。请给我看一下任何关键字或链接。

10x13矩阵的示例:

String [] [] abd = new String [10] [13];

编辑:我选择10x13,因为1x3没有多大意义,它是第一个值1。

我想我理解您正在尝试做什么,它是这样的:

                String[][] value = new String[4][3];

Java没有多维数组,它的数组在数组中。

您试图实现的是什么?听起来您应该将其中一个集合类与表示数据的值对象一起使用。

为什么不创建一个具有“名称”属性(或“索引”(如果愿意)和“列表”类型属性的对象

public class YourMultiDimensionalArrayObject {
    private int index;
    private List<String> vals;

    public YourMultiDimensionalArrayObject(int _index) {
        index = _index;
    }

    public void setValues(List<String> _vals) {
        vals = _vals;
    }

    public int getIndex() {
        return index;
    }

    public List<String> getVals() {
        return vals;
    }
}
public类多维ArrayObject{
私有整数索引;
私人名单;
公共多维ArrayObject(整数索引){
指数=_指数;
}
公共无效设置值(列表值){
VAL=_VAL;
}
public int getIndex(){
收益指数;
}
公共列表getVals(){
返回VAL;
}
}

您可以使用ArrayList存储长度未知的int值数组。您可以使用ArrayList>存储无限数量的int数组。

如果您试图解析文本文件,并且您知道每列的含义,则应创建一个包含该数据的新对象。数组数组是一种不必要的痛苦的黑客行为,如果你只是按照Java的设计来编写一个类,那么你的代码就更易于维护。

我会创建一个
列表
映射
,假设你想存储和查找的值是字符串。

对不起,刚才的布局。我要做的是阵列中的阵列。这意味着在abd[0]中得到了一个三维数组,abdinside[]。我能给你解释清楚吗?String[][]abd=新String[][];忘记了尺寸:字符串[][[]abd=新字符串[dim1][dim2][dim3][dim4];感谢超代码工作will.din知道它可以声明一些多维度数组。这看起来像一个4×3(二维)数组。感谢你的评论,它启发了我。是的,我应该创建一个用于存储数据的类。我是编程新手,尤其是OOP。所以最近我搞不清楚什么时候把它变成一个类,什么时候变成一个函数。任何一本书都推荐你去了解它。是的,谢谢你提到这一点。我认为创建一个新的类来处理它会更好。