请检查是否存在数组越界非法访问等情况

写出一个程序,接受一个有字母和数字以及空格组成的字符串,和一个字符,然后输出输入字符串中含有该字符的个数。不区分大小写。

BufferedReader stdin = new BufferedReader(new InputStreamReader(System.in));
String str = "";
Scanner sc=new Scanner(System.in);
while((str=stdin.readLine())!=null)
{
String word = sc.next();
char ch[] = str.toUpperCase().toCharArray();
word = word.toUpperCase();
int count=0;
for(int i=0;i<ch.length;i++)
{
if(ch[i] == word.charAt(0))
{
count++;
}
}
System.out.println(count);
}
请问哪里出现数组越界错误

2个回答

char ch[] = str.toUpperCase().toCharArray();
->
char ch[] = word.toUpperCase().toCharArray();

你把str和word在循环开始时打印一下看看

Csdn user default icon
上传中...
上传图片
插入图片
抄袭、复制答案,以达到刷声望分或其他目的的行为,在CSDN问答是严格禁止的,一经发现立刻封号。是时候展现真正的技术了!
立即提问
相关内容推荐