我正在使用java。我正在尝试拔出8个字符或更少字符的最后一个字母。然后在
之后拔出每个角色 lengthOfWord = word.length();
lc = word.charAt(lengthOfWord -1);
if (lengthOfWord == 1)
System.out.println(lc);
当我尝试使用带有一个字符的单词时,它会显示“字符串索引超出范围:-1”,当我尝试使用两个字符的单词时,表示构建成功,但不打印任何内容。 / p>
答案 0 :(得分:1)
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));
}
答案 1 :(得分:0)
lengthOfWord基于0,所以你可能想尝试lc = word.charAt(lengthOfWord - 1);