for(int i=0;i<5;i++)
{
char ans = s.next().charAt(i);
}
我得到StringIndexOutOfBoundsException
。为什么会这样?
答案 0 :(得分:1)
因为s.next()
返回的String
少于5个字符。如果您希望它更长,请尝试打印s.next()
以查看该值。
答案 1 :(得分:0)
您正在获取异常,因为您尝试在“ans”变量中分配一个不可用的字符。这背后的原因是,通过调用's.next()'方法获得的字符串不会返回至少包含5个字符的字符串。假设字符串是“Me”,你试图循环它5次,只有两个字符。所以,当你试图寻找第三个索引字符时,没有,所以你得到的是“StringIndexOutOfBoundsException”......
答案 2 :(得分:0)
您还可以重复使用Scanner对象,无需为每个用户输入创建一个新对象。 并且:“charCount = charCount ++;” - &GT; “charCount ++;”