把一个字符串AAABBBCCCdddaa 压缩成 A3B3C3d3a2.
网上有很多,下面是自己随手写的一个。
public static void main(String[] args) {
String ss = "AAAAAaaaGGGBBBVVVVGGGGGGG";
StringBuffer sf = new StringBuffer();
char[] dd = ss.toCharArray();
int num = 1;
for(int i=0;i<dd.length-1;i++){
if(dd[i] == dd[i+1])
++num;
if(dd[i]!=dd[i+1]){
sf.append(dd[i]);
sf.append(num);
num = 1;
}
if(i+2 == dd.length){
sf.append(dd[dd.length-1]);
sf.append(num);
num = 1;
}
}
System.out.println(sf);
}