2012-12-03 139 views
-2

設計並實現一個程序,該程序從用戶讀取一系列10個整數並打印其平均值。以字符串形式讀取每個輸入值,然後嘗試使用Integer.parseInt方法將其轉換爲整數。如果此過程拋出NumberFormatException(意味着輸入不是有效數字),請打印相應的錯誤消息並再次提示輸入數字。繼續讀取值,直到輸入10個有效整數。NumberFormatException獲得平均值

輸入 •10點的整數通過鍵盤從用戶inputed 輸出 •打印平均數目 •錯誤信息 的o如果被輸入的事情不是整數 過程 •導入掃描器 類•使用的Integer.parseInt方法 •創建例外 Ø拋出NumberFormatException的 不適 打印錯誤消息中的每個整數值 Ø整數轉換閱讀

所以我現在正在設計這個,我沒有從編碼開始。我如何結合numberformatexception和parseint?

編輯

進口java.util.Scanner的;

公共類NumAverage {

public static void main (String [] args) 
{ 
    //int a,b; 
    int[] numbers = new int [10]; 

    Scanner numreader = new Scanner(System.in); 

    try 
    { 
     System.out.println("Enter 10 num"); 
     for (int i = 0; i < numbers.length; i++) 
      numbers[i] = numreader.nextInt(); 
      numbers[i] = Integer.parseInt(s) 
    } 
    catch(NumberFormatException numfo) 
    { 
     System.out.println(numfo.getMessage() + "cannot be converted to integer"); 
    } 

}}

所以,我怎麼可以從我的陣列數字被parseInted。

+2

它是功課嗎? –

+1

[你做了什麼?](http://www.whathaveyoudone.com) –

+0

歡迎來到SO。請閱讀[常見問題]和[問]以獲得編寫好問題的提示。提示:發佈你的作業而不顯示任何努力來自己解決問題是一個收集downvotes和關閉選票的快速方法。 –

回答

1

我假設與轉換的部分是傳給你頭疼的一個。

您可以使用try-catch條款:

int a; 
try{ 
    a = Integer.parseInt(aString); 
} 
catch(NumberFormatException e){ 
    System.out.println("An exception has been thrown. " + aString + 
     " is not a valid number"); 
} 

這是需要一個字符串,嘗試將其轉換爲數字,如果有異常拋出,它捕獲,並顯示一條消息的部分。如果String無法轉換爲數字,則會引發異常。

+0

那麼我怎樣才能用這個數字讀入數組? – brennaboo

1

如果你有一個「作家的塊」使用自上而下的抽象編程:

REPEAT 
    read a string; 
    IF converted to an integer THEN 
     ... 
    ENDIF; 
UNtIL ten integers have been read 

然後使代碼混凝土。