public static void main(String[] args) {
Map<String, String> map = new TreeMap<>();
String[] str = {"A","A","B","B","A","A","A","A","B","B","B","A","A","A"};
int num = 1;
String word = "";
int len = str.length - 1;
for(int i=0; i<len; i++) {
if (str[i].equals(str[i+1])) {
word = str[i];
++num;
} else {
num = 1;
}
if(num >= 2){
++i;
while (i < len) {
if (str[i].equals(str[i+1])) {
++i;
++num;
} else {
break;
}
}
//这里的输出是:从0开始计数,连续值起始位置;num 表示连续相同值有多少个
int start = i - num + 1;
int end = start + num - 1;
System.out.println("word="+word+"->"+"start="+start+ "<->end="+end);
map.put(start+","+end,word);
num=1;
}
}
return map;
}
统计数组中连续重复数据出现的次数和起始下标
最新推荐文章于 2022-03-25 13:40:48 发布