题解 | #表示数字#
表示数字
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)); } }