Что ж, я был озадачен тем, как лучше всего это сделать, я написал код для чтения в строках кода из текстовых файлов в виде списка. Затем я могу распечатать определенные части или преобразовать это в массив объектов. Но, в конечном счете, я хотел бы иметь массив 2d int, который вы часто видите в C / C ++. Я очень зеленый, когда дело доходит до Явы, начав только в начале этой недели. Мне нравилось до этого момента создания динамических 2d-массивов во время выполнения. Может ли кто-нибудь из вас предложить хороший способ получить массив 2d int, из которого я сейчас застрял. Я как раз собирался преобразовать его в массив символов с помощью toChar, а затем взять (значение @ index-48) и сохранить его в соответствующем месте, но мне это кажется довольно гетто.
==== обновленный ==========================
Эх, спасибо за все ответы, но я только что понял, как это сделать с помощью двойных чисел, так что для всех остальных, вот и все. Я все еще предпочел бы иметь int, так как я уже построил мои другие классы matrixops, используя этот тип, но я не думаю, что Double должен быть проблемой.
package uaa.cse215;
import java.io.*;
import java.util.*;
public class ReadMatrix {
private Double[][] A;
private Double[][] B;
private int count;
public int filedir(String matrix) throws Exception{
Double[][] Temp;
String[] arr;
BufferedReader rd = new BufferedReader(new FileReader(matrix));
String s;
List<String> textFile = new ArrayList<String>();
while ((s=rd.readLine())!=null) {
textFile.add(s);
}
String splitarray[] = textFile.get(0).split(" ");//run once to grab # cols
int rows = textFile.size();//number of rows
int cols = splitarray.length;//number of cols
Temp = new Double[rows][cols]; // now can initiate array
for (int i=0; i<rows; i++) {
s = textFile.get(i);
arr = s.split(" ");
for (int j=0; j<cols; j++) {
Temp[i][j] = Double.parseDouble(arr[j]);
}
}
count++;
if (count == 1){
A = Temp;
}
else
B = Temp;
rd.close();
return(1);
}
}