我的任務是刪除連續重複的字符,並替換字符串中重複字符的計數。當我比較這兩個字符時,我得到了IndexOutOfBoundException。我不知道如何糾正它。是初學者。我在這裏附上我的代碼。任何人都可以驗證我的代碼並幫助我。比較java中字符串中的字符?
程序:
import java.util.*;
public class RemoveDupchar{
public static void main(String []args){
String string = "aabbccdefatafazaacddsegf";
char[] chars = string.toCharArray();
ArrayList<Character> al=new ArrayList<Character>();
for(char c : chars)
{
al.add(c);
}
int i=0;
int j=0,k=1;
char[] r = new char[100];
for(i=0;i<al.size();i++)
{
char ch;
ch=al.get(i);
if(ch!=al.get(i+1)) **//I got Runtime error here**
{
r[j++]=ch;
}
else
{
r[j++]=ch;
while(al.get(i)==ch)
{
++k;
++i;
}
r[j++]=(char)k;
}
}
for(char c: r)
{
System.out.print(c);
}
}
}
確切的堆棧跟蹤,我們需要更多的細節。 – Li357