Re: [問題] 請問有關於判斷輸入是否為數字及重輸入
我有點無聊
雖然工作還沒做完 XD
請見圖!
http://ppt.cc/nwjS
雖然是JDK6
撇開JDK7的例外語法不看之外
這就是IDE錯誤的顯示阿
這也是我到現在都還是依賴IDE阿
常常都會忘記一些基本的語法錯誤(反正IDE會跟我說阿)
所以你的IDE是什麼呢
工欲善其事 , 必先利其器
我想書本裡面應該也有提到吧
還是你把IDE裡面的編譯錯誤醒示給關掉了?
然後
這是修改後的結果
http://ppt.cc/nyR8
(我比較懶惰~反正都是例外啦)
以上都是看看就好 XD
※ 引述《pugboy ()》之銘言:
: 請問各位前輩,這是我在書本看到的練習
: 題目是:使用[介面]撰寫code完成
: 定義一個大學及研究所成績通過的介面,它有兩個資料成員
: ,分別是大學及格成績60及研究所及格分數70,定義一個方法成員,用來判斷是否及格
: ,再分別定義大學及研究所的類別來實作介面,在主程式中,先讓使用者輸入分數,
: 再由電腦先是及格與否。
: 我的code如下:
: package Book;
: import java.io.*;
: interface Score{ //介面
: final int POSTGRADUATE=70; //研究生及格分數
: final int UNDERGRADUSTE=60; //大學生及格分數
: public abstract String results(); //抽象判斷方法
: }
: class CPostgraduate implements Score { //研究生類別實作介面
: private int cscore;
: CPostgraduate(int cscore){
: this.cscore = cscore;
: }
: @Override
: public String results(){ //實作判斷方法
: if(cscore >= POSTGRADUATE)
: return "及格";
: else
: return "不及格";
: }
: }
: class CUndergraduate implements Score { //大學生類別實作介面
: private int cscore;
: CUndergraduate(int cscore){
: this.cscore = cscore;
: }
: @Override
: public String results(){ //實做判斷介面
: if(cscore >= UNDERGRADUSTE)
: return "及格";
: else
: return "不及格";
: }
: }
: public class Goodself { //主程式
: public static void main(String[]args) { //main進入點
: BufferedReader keyin = new BufferedReader(new
: InputStreamReader(System.in));
: System.out.println("請輸入:");
: try{ //問題點! 如果是數字就進入
: int input = Integer.parseInt(keyin.readLine());
: }catch(IOException | NumberFormatException e){//如果不是數字就拋出例外
: //且印出錯誤訊息
: System.out.println("不是數字");
: }finally{
: CPostgraduate p1 = new CPostgraduate(input); //印出總結果
: System.out.println("研究所成績,"+p1.results());
: CUndergraduate u1 = new CUndergraduate(input);
: System.out.println("大學成績,"+u1.results());
: }
: }
: }
: 我的問題是最後這個程式輸入不是數字的時候會拋出例外並印出("不是數字")
: 但是輸入數字卻會跑出下列錯誤訊息:
: Exception in thread "main" java.lang.RuntimeException: Uncompilable source
: code - cannot find symbol
: symbol: variable input
: location: class Book.Goodself
: at Book.Goodself.main(Goodself.java:48)
: Java Result: 1
: 我想請問各位前輩是不是我try那邊有寫錯觀念不對呢?
: 還有請問判斷輸入超過0~100這個範圍也要輸出錯誤訊息 以及
: 如果輸入錯誤可以讓使用者再重新輸入
: 這樣要如何改寫code呢?
: 麻煩了
: 謝謝前輩
--
※ 發信站: 批踢踢實業坊(ptt.cc)
◆ From: 163.29.29.131
推
12/25 13:37, , 1F
12/25 13:37, 1F
→
12/26 09:51, , 2F
12/26 09:51, 2F
→
12/26 12:38, , 3F
12/26 12:38, 3F
→
12/26 19:36, , 4F
12/26 19:36, 4F
討論串 (同標題文章)
本文引述了以下文章的的內容:
完整討論串 (本文為第 3 之 3 篇):