[英]Why doesn't this print the last character of the word?
我正在使用Java。 我正在嘗試取出8個字符以內的單詞的最后一個字母。 然后拉出每個字符
lengthOfWord = word.length();
lc = word.charAt(lengthOfWord -1);
if (lengthOfWord == 1)
System.out.println(lc);
當我嘗試使用一個字符的單詞時,它說“字符串索引超出范圍:-1”,當我嘗試使用兩個字符的單詞時,它說“ build”成功,但是不打印任何內容。
lengthOfWord
超出了word
的范圍。 采用:
lc = word.charAt(lengthOfWord - 1);
請記住,.length()返回對象的字符數,但是對象的索引從0
開始,以length()-1
。
更新嘗試執行以下操作檢查單詞中的所有字符:
for (int i = 0; i < word.length(); i++) {
System.out.println("Char " + i + ": " + word.charAt(i));
}
lengthOfWord基於0,因此您可能想嘗試lc = word.charAt(lengthOfWord-1);
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.