用一个count变量保存连续数字串的长度,如果遇到数字,count为0说明该数字是第一个数字,则追加一个星号,再将当前数字添加进去;如果没有遇到数字,检查count,若大于0,则说明前面有count个连续数字,追加一个星号,count置为0,将当前字符添加进去
import java.util.Scanner;
// 注意类名必须为 Main, 不要有任何 package xxx 信息
public class Main {
public static void main(String[] args) {
Scanner in = new Scanner(System.in);
String line = in.nextLine();
int count = 0, length = line.length();
StringBuilder sb = new StringBuilder();
for(int i = 0; i < length; i++) {
char ch = line.charAt(i);
if(ch >= '0' && ch <= '9') {
if(count == 0) { // 第一个连续数字
sb.append("*");
}
sb.append(ch);
count++;
} else {
if(count > 0) sb.append("*");
sb.append(ch);
count = 0;
}
}
if(count > 0) sb.append("*"); // 处理最后一个字符是数字的情况
System.out.println(sb.toString());
}
}

京公网安备 11010502036488号