题解HJ96 | #表示数字#
表示数字
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); String s = in.nextLine(); StringBuilder result = new StringBuilder(); //上一位是否是数字 boolean last = false; for (int i = 0; i < s.length(); i++) { if (s.charAt(i) >= '0' && s.charAt(i) <= '9' && !last) { result.append("*"); } result.append(s.charAt(i)); //后面如果还有且不是数字且当前是数字 if (i + 1 < s.length() && (s.charAt(i + 1) < '0' || s.charAt(i + 1) > '9') && s.charAt(i) >= '0' && s.charAt(i) <= '9') { result.append("*"); } //当前是最后一位且当前是数字 if (i == s.length() - 1 && s.charAt(i) >= '0' && s.charAt(i) <= '9') { result.append("*"); } if (s.charAt(i) >= '0' && s.charAt(i) <= '9') { last = true; } else { last = false; } } System.out.println(result); } }
感觉这道题写的好笨 完全是在打补丁