Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/java/395.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Java 从垂直数组中获取单个列表并水平存储_Java_Arrays_String_Matrix_Weka - Fatal编程技术网

Java 从垂直数组中获取单个列表并水平存储

Java 从垂直数组中获取单个列表并水平存储,java,arrays,string,matrix,weka,Java,Arrays,String,Matrix,Weka,我有一个一维字符串,所以nx1,其中每个字符串是每行一列中的唯一数组,作为ArrayList给出: [x] [y] [z] 但是,我想知道在数组或列表的数量未知的情况下,如何在一般意义上做到这一点。因此,必须实现类似于list.all(valueHere)的功能 预期输出-类似于: [x][y][z] 编辑: 本质上,可能是一个for循环可以做到这一点: 从循环中选择各个列表(可能是根据其长度),然后将其粘贴在一起或水平存储为列表 也许需要一个空数组,它使用这些数组来填充它们: //step

我有一个一维字符串,所以
nx1
,其中每个字符串是每行一列中的唯一数组,作为ArrayList给出:

[x]
[y]
[z]
但是,我想知道在数组或列表的数量未知的情况下,如何在一般意义上做到这一点。因此,必须实现类似于
list.all(valueHere)
的功能

预期输出-类似于:

[x][y][z]
编辑: 本质上,可能是一个for循环可以做到这一点: 从循环中选择各个列表(可能是根据其长度),然后将其粘贴在一起或水平存储为列表

也许需要一个空数组,它使用这些数组来填充它们:

//step 1
[x]
[y]
[z]

//step2
[x][y]
[z]

//step3
[x][y][z]

//second example

/empty array
[][][]
//list
[x]
[y]
[z]

//step 1

[x][][]

[y]
[z]

//step 2
[x][y][]

[z]

//step 3
[x][y][z]
我已通过以下操作成功获取此列表中的第一个元素,但并非所有元素都将被替换:

String[]yourArr=新字符串[test.numInstances()];

对于(int i=0;i,经过大量阅读并利用@GhostCat提供的洞察力,我已经设法找到了我需要的东西

我首先必须创建一个空的虚拟数组:

String[] submit = null;
以及另一个虚拟数组,该数组包含实例数的长度(或我要查找的字符串的长度)

然后创建一个for循环,将
.arff
数据的类索引中的实例存储到一个数组中。然后将该数组存储到ampty数组
yourArr
,最后将此范围复制到另一个范围中:

for(int i = 0; i<test.numInstances();i++) {
String  trueClassLabel = test.instance(i).toString(test.classIndex());
s = new String[] {trueClassLabel};
yourArr[i] = s[0];
submit = Arrays.copyOfRange(yourArr, 0, i);
}
输出:

[输,输,输,抽,赢,输,输,抽,赢,赢,赢]


您可以像下面这样加入字符串数组:string.join(“,t)。反向操作将被拆分(“”)添加当前输出和预期输出output@Stackbeans从某种意义上说,这个一维数组是一个水平数组。这取决于你如何解释你的代码和你的数据结构。在一个一维数组中没有翻转?@GhostCat我更新了这个问题,而不是提出一个新的问题。这是我最初想要的。也许是“重复的”问题',不再适用?
for(int i = 0; i<test.numInstances();i++) {
String  trueClassLabel = test.instance(i).toString(test.classIndex());
s = new String[] {trueClassLabel};
yourArr[i] = s[0];
submit = Arrays.copyOfRange(yourArr, 0, i);
}
System.out.println(Arrays.toString(submit));