gpt4 book ai didi

java - 通过按钮和 .txt 文件输入 2D 数组 处理 Java

转载 作者:行者123 更新时间:2023-12-01 15:31:06 25 4
gpt4 key购买 nike

在对该社区和许多其他互联网社区进行彻底调查后,我未能解决我的问题。它是关于 ControlP5 按钮的,我的目标是从以前格式化的文本文件中导入 2D 数组,其中包含两列和 19 行以及空格分隔的值。现在我的代码可以工作,但我指定用于保存 txt 中的值的 2D 数组并未获取所有值,而仅获取第一行中的最后一对。我知道 for 循环遍历所有值,但仅将它们存储在第一行中。我不知道如何将其插入另一行进行阅读。这是我的代码:

if(theEvent.isController())
{
if(theEvent.controller().name() == "mean shape males")
{
String loadPath1 = selectInput();
reader = createReader(loadPath1); //new BufferedReader
int x=0; //rows
int y=0; //columns
String smaLine;
try
{
while ((smaLine = reader.readLine()) != null)
{
String[] values = smaLine.split(", ");
for(int i = 0; i < values.length; i++)
{
float[] testC = float(split(values[i], " "));
for (int j = 0; j < testC.length; j++)
{
mat1[j][i] = testC[j]; //THIS IS THE PROBLEMATIC MATRIX
}
}
x = x+1;
}
}
catch (IOException e)
{
e.printStackTrace();
}
mat1max = maxRet(mat1);
mat1min = minRet(mat1);
inputMat = new Grid(2,19,10,130,22,mat1,mat1min,mat1max);
}
}

我使用了我在 Stack Overflow 上能找到的所有建议,主要来自这篇文章 How to print 2D Array from .txt file in Java但我似乎无法将读者移至第一行以外的行。

最佳答案

我猜测您不想重置 mat1 中的元素,而是想为每一行创建一个新矩阵并将它们存储在某种类型的列表中。您可以这样做:

List<?> matrices = new ArrayList<?>();
while ((smaLine = reader.readLine()) != null)
{
float[][] mat = new float[MATRIX_ROWS][MATRIX_COLUMNS];
String[] values = smaLine.split(", ");
for(int i = 0; i < values.length; i++)
{
float[] testC = float(split(values[i], " "));
for (int j = 0; j < testC.length; j++)
{
mat[j][i] = testC[j];
}
}
matrices.add(mat);
x = x+1;
}

顺便问一下,x 在哪里使用?

关于java - 通过按钮和 .txt 文件输入 2D 数组 处理 Java,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/9500120/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com