我試圖編寫一個程序來讀取數組的文件(以行作爲第一個字符,並將列作爲下一個字符排列,以及然後是一盒RxC術語),並試圖確定水平,垂直或對角線上相鄰的五個字符是否相同,顏色不同(在我的GUI主程序中)將讀取文件中的整數字符存儲到二維數組中
代碼非常慢,只適用於較小的陣列?我不明白我做錯了什麼。
文件是這樣的:
5 4
1 2 3 4 5
1 2 3 4 5
7 3 2 0 1
6 1 2 3 5
代碼:
public class fiveinarow
{
int[][] Matrix = new int [100][100];
byte[][] Tag = new byte [100][100];
int row, col;
String filepath, filename;
public fiveinarow()
{
row = 0;
col = 0;
filepath = null;
filename = null;
}
public void readfile()
{
JFileChooser chooser = new JFileChooser();
chooser.setDialogType(JFileChooser.OPEN_DIALOG);
chooser.setDialogTitle("Open Data File");
int returnVal = chooser.showOpenDialog(null);
if(returnVal == JFileChooser.APPROVE_OPTION)
{
filepath = chooser.getSelectedFile().getPath();
filename = chooser.getSelectedFile().getName();
}
try
{
Scanner inputStream = new Scanner(new FileReader(filepath));
int intLine;
row = scan.nextInt();
col = scan.nextInt();
for (int i=0; i < row; i++)
{
for (int j = 0 ; j < col; j++)
{
int[][]Matrix = new int[row][col];
Matrix[i][j] = inputStream.nextInt();
}
}
}
catch(IOException ioe)
{
System.exit(0);
}
}
當我計算出一個7x7的,我得到開放和處理的確認提供了全零的數組(7×7)。 當我計算15x14,我得到「在線程異常 「AWT-EventQueue的-0」 的錯誤和不陣列處理時
你似乎有混合的行和列(如果你的示例數據是正確的數據)。你的例子有四行和五列 – ErstwhileIII