大佬,一组数里面是0,0,0,1,0,0,2,2,0,2,2,0,0,3,0,0,0,0 (0,2,2,0,2,2就算一个室早三联)如果022022是连续出现的话也只算一个比如022022022022这样也只算一个不连续的022022才++,统计022022的个数,求大佬帮忙
package com.lee.study;
import java.util.regex.Matcher;
import java.util.regex.Pattern;
public class Study20 {
public static int getAmount(int[] numbers) {
Pattern p = Pattern.compile("(?<!022022)022022(?!022022)");
StringBuilder stringBuilder = new StringBuilder(numbers.length);
for (int number : numbers) {
stringBuilder.append(number);
}
Matcher m = p.matcher(stringBuilder.toString());
int counter = 0;
while (m.find()) {
counter++;
}
return counter;
}
public static void main(String[] args) {
int[] numbers = {0, 0, 0, 1, 0, 0, 2, 2, 0, 2, 2,0, 2, 2, 0, 2, 2, 0, 0, 3, 0, 0, 0, 0};
System.out.println("应该输出1");
System.out.println(getAmount(numbers));
}
}
如果采纳,希望给个赞哦!@@