编程实现统计连续重复字符的数量
package com.example.demo.reflact; import java.util.ArrayList; import java.util.HashMap; import java.util.Set; import java.util.TreeMap; public class A { public static void main(String[] args) { //// 编程实现统计连续重复字符的数量。 //// 例如:输入一个字符串“bbb2aaccbycza”,输出为“b32a2c2bycza” String str ="bbb2aaccbycza"; // 利用StringBuffer变量字符串接受结果 StringBuffer sb = new StringBuffer(); char element = str.charAt(0); int count=1; for(int i=1;i<str.length();i++) { if(element==str.charAt(i)) { count++; }else { //当读到另一个不一样的字符的时候,再拼接之前统计的字符 sb.append(element); //如果统计数量为1的时候不输出统计数量 sb.append(count==1 ? "" :count); element = str.charAt(i); count=1; } } // 保证当最后一个字符和统计的数量都拼接上 sb.append(element); sb.append(count==1 ? "" :count); System.out.println(sb); } }