このプログラムをコンパイルしようとすると、21行目に「到達不能ステートメント」エラーが表示されます。
import java.util.*;
import java.io.*;
import java.nio.file.*;
import java.lang.StringBuilder;
class FilePrep {
public static void main(String args[]) {
}
public String getStringFromBuffer() {
try {
Path file = Paths.get("testfile2.txt");
FileInputStream fstream = new FileInputStream("testfile2.txt");
BufferedReader br = new BufferedReader(new InputStreamReader(fstream));
String inputLine = null;
StringBuffer theText = new StringBuffer();
while((inputLine=br.readLine())!=null) {
theText.append(inputLine+" ");
}
return theText.toString();
System.out.println(theText); // <-- line 21
}
catch (Exception e)
{
System.err.println("Error: " + e.getMessage());
return null;
}
}
}
完全なコンパイラ出力は次のとおりです。
Main.java:21: error: unreachable statement
System.out.println(theText);
^
Main.java:28: error: missing return statement
}
^
2 errors
ステートメントは適切な場所にあると思いますreturn
...少なくとも私にはそうです、そしてプログラムは私がそれを複製したものと比較してとても単純に見えるので、なぜこれがなぜか理解するのに本当に苦労していますステートメントに到達できません。
コードをコピーしているときに何を間違えましたか?また、どのように修正する必要がありますか?