查看單個文章
舊 2009-11-07, 06:37 PM   #23 (permalink)
cwvdavid
長老會員
 
cwvdavid 的頭像
榮譽勳章
UID - 476
在線等級: 級別:46 | 在線時長:2395小時 | 升級還需:2小時級別:46 | 在線時長:2395小時 | 升級還需:2小時級別:46 | 在線時長:2395小時 | 升級還需:2小時級別:46 | 在線時長:2395小時 | 升級還需:2小時級別:46 | 在線時長:2395小時 | 升級還需:2小時級別:46 | 在線時長:2395小時 | 升級還需:2小時
註冊日期: 2002-12-06
住址: 天與地的夾縫
文章: 3106
精華: 0
現金: 5256 金幣
資產: 2034465 金幣
預設

引用:
作者: bblin2 查看文章
小弟建議你不要背步驟,因為不同的編輯器操作方法都不一樣。
即使是相同的編輯器不同版本操作方法也可能改變。

你(妳)必須知道為何要給參數?以及如何給參數?

以你的例子來說:
一般程式執行都是在『命令模式』就是 C:> 底下執行
所以正常程式執行應該如下面:

C:>JavaApplication17 72 160

其中 JavaApplication17 是程式的名字、72 是體重、160 是身高。
程式收到參數後會儲存在『字串型態』的 args 陣列裡面,
args[0] 放的就是 72、args[1] 放的就是 160

要計算時需轉換成『數值型態』,就是下面這兩行
int weight = Integer.parseInt(args[0]);
int hight = Integer.parseInt(args[1]);

之後程式依據公式,算出 bmi 後列印出來。
---------------------------------------------------------------
因為編輯器沒有『命令模式』讓你輸入身高、體重,所以提供『參數』功能讓
指定身高、體重。
家裡的編輯器一開始沒有設定身高、體重,當然就會出錯囉!

下面的錯誤訊息就是說,『字串型態』的陣列裡沒有適當的資料,指的就是
args陣列

Exception in thread "main" java.lang.ArrayIndexOutOfBoundsException: 0
at javaapplication16.Main.main(Main.java:20)


補充說明:
在command模式底下

要先打Java

也就是說

編譯時
C:\javac JavaApplication17.java

執行時...(執行JavaApplication17.class)
C:\java JavaApplication17 72 160


在command模式,還有環境變數(path)的問題,如果沒設定的話,
在C:\輸入java....電腦會說【'java' 不是內部或外部命令、可執行的程式或批次檔】
__________________
姜太公釣魚~ 願者上鉤
cwvdavid 目前離線  
送花文章: 4036, 收花文章: 2466 篇, 收花: 10141 次
回覆時引用此帖