- ベストアンサー
JAVAでエラーがでる。
JAVA初心者なのですが、下のプログラムは数値を入力して、それを表示させるという簡単なプログラムなのですが、実行すると、 String str = br.readLine(); のbr.readLine();の部分に赤い波線が出て、 「処理されない例外の型 IOException at B.main(B.java:11)」 というエラーが出てしまってこまっています。 参考書のとうりに入力しているのになぜでしょうか? タブやスペースが使えないので見にくくなってしまってすみません。 どなたかJAVAに詳しい方 教えてください。 import java.io.*; public class B { public static void main(String[] args) { BufferedReader br = new BufferedReader(new InputStreamReader(System.in)); String str = br.readLine(); int num = Integer.parseInt(str); System.out.println(num + "が入力されまた。"); } }
- みんなの回答 (2)
- 専門家の回答
質問者が選んだベストアンサー
こんにちは。 import java.io.*; public class B { public static void main(String[] args) { BufferedReader br = new BufferedReader(new InputStreamReader(System.in)); try { String str = br.readLine(); int num = Integer.parseInt(str); System.out.println(num + "が入力されまた。"); } catch ( IOException e ) { } } } これでエラーはなくなると思います。 例外処理については詳しく書いてくれているページ等あるので 調べてみてください。
その他の回答 (1)
- jikankou
- ベストアンサー率38% (42/108)
参考書を打ち間違えたか、参考書の誤りです。 少し書き直してみました。 import java.io.*; public class Test { public static void main(String[] args) { BufferedReader br = new BufferedReader(new InputStreamReader(System.in)); int num = 0; try{ String str = br.readLine(); num = Integer.parseInt(str); } catch(IOException e){ } System.out.println(num + "が入力されまた。"); } } BufferedReader の readLine()はIOException という例外を発生するのでキャッチしてやらなければなりません。もう一つの方法がありますが、その辺は参考書にものっているとおもうので調べてみてください。
お礼
早い回答ありがとうございました。 そういえば学校ではできて家ではできなかったので、 Eclipseかなにかの設定とかが関係しているのかも? ともかく、勉強はできるようになったので助かりました。 ありがとうございました。
お礼
早い回答ありがとうございました。 教えていただいたやりかたで無事実行できました。