看板 java 關於我們 聯絡資訊
各位大哥大姐你們好,我是剛學習JAVA的新手,第一次發文,如有冒犯之處,請多包涵 就是我在一個自學網上練習一個習題, 題目為:寫一個將顛倒字串輸出的程式ReverseString.java。 我將此網站給的答案另存為Java檔 然後compile成class檔 最後執行 java ReverseString 跑出一串訊息為 Exception in thread "main" java.lang.ArrayIndexOutOfBoundsException: 0 at ReverseString.main<ReverseString.java:10> 是不是哪裡出錯呢?並沒有將顛倒字串輸出阿, 可不可以請各位大哥大姐幫我解決問題呢? 不好意思麻煩了,謝謝。 Code如下: import java.io.*; /**ReverseString 將第一個參數字串以相反的順序輸出 */ public class ReverseString { public static void main(String[] args) throws IOException{ int length = args[0].length(); //輸出結果為result char result[] = new char[length]; //for args[0]中的第一個字到最後一個字 for(int i = 0 ; i < length;i++){ //result[length - i - 1] = args[0][i] result[length - i - 1] = args[0].charAt(i); }//end for System.out.println(result); }//end main }//end ReverseString -- ※ 發信站: 批踢踢實業坊(ptt.cc) ◆ From: 220.133.52.180
pugboy:我在網路上找到java.lang.arrayindexOutOfBoundsException 04/07 10:10
pugboy:的意思是數組上限超出了,是什麼意思呢? 04/07 10:13
pugboy:i < length 是這行出的問題嗎? 04/07 10:14
PsMonkey:都告訴你第十行出問題了,你也講一下第十行是啥吧..... 04/07 11:10
eieio:意思是例如 array A[] 長度為 5,結果你去抓 A[10] 04/07 12:08
eieio:如果 args[] 是空的,那 args[0] 也會爆掉 04/07 12:11
pugboy:第十行是int length = args[0].length(); 04/07 14:47
pugboy:所以是我一開始設的長度問題嗎? 謝謝P大跟E大的回覆! 04/07 14:53
pugboy:還是試不出來耶... 04/07 15:47
ssc24:執行 java ReverseString HelloWorld 看結果 04/07 16:28
pugboy:謝謝你ssc24大大 成功了 04/07 16:42
mrker:可以把String轉成StringBuilder 有reverse可用 04/08 00:08
risker760915:他字串是從args[0]取得,而這個是你要給他的 04/10 17:33