私は長さ200の大きな文字列配列を返そうとしていますが、使用するコードは15を返す/実行時に配列長を15に設定します。配列のサイズが変わることがありますので、サイズを変えてみると大きめです。ファイルにバッファリングされたテキストライター
public static String[] populateArray(String fileName)
{
String [] record = new String [200]; // array length is 200
try
{
FileReader fileReader = new FileReader(fileName);
BufferedReader bufferedReader = new BufferedReader(fileReader);
String line = null;
int counter = 0;
int arrayLength = 0; // using this to check length during execution
while((line = bufferedReader.readLine())!= null && counter < 200)
{
record[counter] = line;
counter +=1;
arrayLength = record[0].length(); // the file contains 20 lines to input here but
only does 15
}
bufferedReader.close();
}
catch (IOException ex)
{
System.out.println("There was an error while trying to access the file");
}
return record;
}
'arrayLength = record [0] .length()'の目的は何ですか? 'record [0]'は最初の反復で割り当てられ、それ以降は更新されないので、その行をループ外に移動することができます。なぜなら、 'arrayLength'が入力の最初の行の長さと何らかの関係を持つ理由を見つけることができないからです。 * * –
Andreas