Java 字符串索引超出范围?哪里

Java 字符串索引超出范围?哪里,java,exception,for-loop,runtime-error,java.lang.class,Java,Exception,For Loop,Runtime Error,Java.lang.class,这是我查找字符串中元音数量的代码: { String inyo=inpeo.getText().toLowerCase(); System.out.println(inyo); // Just checking for an empty string int vowcount=0; for(int i=0;i<=inyo.length();i++) { char rol=inyo.charAt(i);

这是我查找字符串中元音数量的代码:

{
    String inyo=inpeo.getText().toLowerCase();
    System.out.println(inyo); // Just checking for an empty string

    int vowcount=0;
    for(int i=0;i<=inyo.length();i++)
 {           
        char rol=inyo.charAt(i);
        if(rol=='o'||'u'==rol||rol=='a'||rol=='e'||rol=='i')
        {
            vowcount=vowcount+1;
            System.out.println(vowcount);
        }

        numout.setText(""+vowcount);

    }
}                                        

因此,除了关闭并重新启动程序之外,没有办法重用程序。当输出符合要求时,为什么会出现此错误?我也没有得到任何空字符串。

for循环的
的最后一次迭代导致异常(当
I==inyo.length()时)。只需将其替换为:

for(int i=0; i<inyo.length(); i++)

for(int i=0;i
i您的
for
循环走得太远了,这

for(int i=0;i<=inyo.length();i++)
for(int i=0;ifor循环应为

for(int i=0; i<inyo.length(); i++)

for(int i=0;i
i你需要写它!它起作用了。但有一个问题:我的操作符怎么会把事情搞砸了?比较操作符
一个字符的索引从零开始。最后一个字符在index
inyo.length()-1
。哦,谢谢你的建议。
for(int i=0;i<inyo.length();i++)
for(int i=0; i<inyo.length(); i++)