查找字符串中倒数第二个出现的字符



这是我的代码,我只是反转循环,然后增加计数器,使第一次出现的计数值为1,因此跳过println((情况。之后,在第二次出现时,它将转到嵌套的if大小写,并只打印倒数第二个元音的索引。

class Main {
public static void main(String[] args) {
int count=0;
String str = "corresponding";
for(int i=str.length();i>=0;i--){
if(i=='a' || i=='e' ||i =='i'|| i=='o'|| i=='u'){
count +=1;
if(count==2)
System.out.println(i);
else
continue;
}
else
continue;
}
}
}

由于一些小的逻辑错误,我无法打印,我无法弄清楚。有人能帮我吗。

您将i与元音字符进行比较,而不是比较字符串中的字符,因此您应该这样做:

char c = str.charAt(i);
if (c=='a' || c=='e' ||c =='i'|| c=='o'|| c=='u')

还请注意,我应该从str.length()-1开始

首先,您应该注意在访问数组元素时引发异常的起始索引。由于您没有访问元素,因此目前不会出现错误。让我们尝试使用charAt方法来访问它们。

最新更新