我在獲取方法在Java中正常工作時遇到了一些問題。在程序中,我創建了一個由不同長度的許多不同單詞組成的數組。我正在處理的方法應該是讀取字長,字母和位置的用戶輸入,然後Java將打印出與這三個參數匹配的任何單詞(例如,如果用戶輸入字長4,字母A和位置2,而長度爲4的字包含位置2處的字母A將被打印出來)。StringIndexOutOfBoundsException
無論如何,我已經創建的方法是這樣的:
public static void inputMethod(int length, char letter, int position){
for (int index = 0; index < wordTable.length; index++) {
if (length == wordTable[index].length() && letter == wordTable[index].charAt(position))
System.out.println(wordTable[index]); }
這種方法工作正常進行一些投入,但對於其他輸入我得到一個錯誤信息,如本:
Exception in thread "main" java.lang.StringIndexOutOfBoundsException: String index out of range: 5
at java.lang.String.charAt(Unknown Source)
at Wordarray.inputMethod(Wordarray.java:153)
at Wordarray.main(Wordarray.java:61)
如果有人能向我解釋我如何解決這個問題,我將不勝感激!就像我所說的,我只收到某些輸入信息。對於其他輸入,該程序就像它應該的那樣工作。
非常感謝!這工作完美:)。畢竟,我不需要assert語句。不勝感激! – Kristian