Java 将值存储到多维数组中

Java 将值存储到多维数组中,java,testng,Java,Testng,我有一个方法如下 public Object[][] createData() { return new Object[][] { {"data1"},{"data2"},{"data3"} }; } 现在让我们假设我在一个属性文件中有多个数据(高达data50),并且我将所有值存储在上述方法中的一个列表中。返回对象而不硬编码方法内的数据值(如data4、data5、data6……)的最佳方法是什么?您不能使用循环吗 Object[][] data

我有一个方法如下

public Object[][] createData() {
    return new Object[][] {
               {"data1"},{"data2"},{"data3"}
    };
}

现在让我们假设我在一个属性文件中有多个数据(高达data50),并且我将所有值存储在上述方法中的一个列表中。返回对象而不硬编码方法内的数据值(如data4、data5、data6……)的最佳方法是什么?

您不能使用循环吗

Object[][] data = new Object[50][1];

for (int i = 0; i < 50; i++) {
    data[i] = new Object[]{getData()};
}
Object[][]数据=新对象[50][1];
对于(int i=0;i<50;i++){
data[i]=新对象[]{getData()};
}

数据
是一个数组数组(“2D数组”)。换句话说,
data
的每个元素
data[i]
本身就是一个
对象[]
。因此,我们可以将
新对象[]{getData()}
(一个数组)分配给
数据[i]

为什么在属性文件中有数组的数据?属性文件用于以
key:value
对的形式存储数据,适用于
Map
@RohitJain:好吧,假设我只有文本文件或电子表格中的数据,我正在读取文本文件/电子表格并将值存储在列表中。你真的需要数组吗?看起来一个数组就足够了。@RohitJain:是的。这就是testng想要的。好吧,真正的魔力在于
getData()
,这是OP想要知道的;数据是一维的吗?你能解释一下吗?@RohitJain:我同意arshajii的解决方案。但我已经在谷歌上搜索了一段时间后试过了。但我想知道它是怎么做到的works@user1629109我补充了一些解释;如果还有什么不清楚的地方,请告诉我。