题解 | #表示数字#
表示数字
https://www.nowcoder.com/practice/637062df51674de8ba464e792d1a0ac6
import java.util.Scanner;
// 注意类名必须为 Main, 不要有任何 package xxx 信息
public class Main {
public static void main(String[] args) {
Scanner in = new Scanner(System.in);
// 注意 hasNext 和 hasNextLine 的区别
String str = in.nextLine();
char[] chars = str.toCharArray();
int cnt = 0;
for(char cur : chars){
if(Character.isDigit(cur)){
cnt++;
}
}
int index = 0;
int nIndex = 0;
char[] newChars = new char[chars.length + 2*cnt];
while(index < chars.length){
int begin = index;
while(index < chars.length && Character.isDigit(chars[index])){
index++;
}
if(index != begin){
newChars[nIndex++] = '*';
for(int i=begin;i<index;i++){
newChars[nIndex++] = chars[i];
}
newChars[nIndex++] = '*';
}else{
newChars[nIndex++] = chars[index++];
}
}
String res = new String(newChars);
System.out.println(res.substring(0, nIndex));
}
}