1. 程式人生 > >案例1:寫一個壓縮字符串的方法,例如aaaabbcxxx,則輸出a4b2c1x3。

案例1:寫一個壓縮字符串的方法,例如aaaabbcxxx,則輸出a4b2c1x3。

取字符串 ++ 單個字符 int return tst ast zip stat

public static String zipString(String str){

  String result = "";//用於拼接新串的變量

  char last = str.charAt(0);//用於獲取下一個單個字符

  int length = str.length();//獲取字符串長度,用於遍歷的條件

  int count = 1;//計數器,用於記錄每個字符重疊的次數

  for(int i = 1 ; i<length ; i++){//從第二個索引開始判斷

    if(last==str.charAt(i)){//判斷下一個字符是否與當前字符相等

      count++;

    }else{

      result += last + "" +count;

      last = str.charAt(i);//把當前字符給last變量

      count = 1;//恢復計數器

    }

  }

  String outString =result+last+count;

  if(outString.length()==str.length())

  return str;

  else

  return outString;

}

案例1:寫一個壓縮字符串的方法,例如aaaabbcxxx,則輸出a4b2c1x3。