mirror of
https://github.com/youngyangyang04/leetcode-master.git
synced 2025-07-07 15:45:40 +08:00
Update kama54.替换数字.md
修改kama54.替换数字中的java实例代码思路流程,与为C++代码保持一致
This commit is contained in:
@ -146,17 +146,42 @@ for (int i = 0; i < a.size(); i++) {
|
||||
```java
|
||||
import java.util.Scanner;
|
||||
|
||||
class Main {
|
||||
public static void main(String[] args) {
|
||||
Scanner in = new Scanner(System.in);
|
||||
String s = in.nextLine();
|
||||
StringBuilder sb = new StringBuilder();
|
||||
public class Main {
|
||||
|
||||
public static String replaceNumber(String s) {
|
||||
int count = 0; // 统计数字的个数
|
||||
int sOldSize = s.length();
|
||||
for (int i = 0; i < s.length(); i++) {
|
||||
if (Character.isDigit(s.charAt(i))) {
|
||||
sb.append("number");
|
||||
}else sb.append(s.charAt(i));
|
||||
if(Character.isDigit(s.charAt(i))){
|
||||
count++;
|
||||
}
|
||||
System.out.println(sb);
|
||||
}
|
||||
// 扩充字符串s的大小,也就是每个空格替换成"number"之后的大小
|
||||
char[] newS = new char[s.length() + count * 5];
|
||||
int sNewSize = newS.length;
|
||||
// 将旧字符串的内容填入新数组
|
||||
System.arraycopy(s.toCharArray(), 0, newS, 0, sOldSize);
|
||||
// 从后先前将空格替换为"number"
|
||||
for (int i = sNewSize - 1, j = sOldSize - 1; j < i; j--, i--) {
|
||||
if (!Character.isDigit(newS[j])) {
|
||||
newS[i] = newS[j];
|
||||
} else {
|
||||
newS[i] = 'r';
|
||||
newS[i - 1] = 'e';
|
||||
newS[i - 2] = 'b';
|
||||
newS[i - 3] = 'm';
|
||||
newS[i - 4] = 'u';
|
||||
newS[i - 5] = 'n';
|
||||
i -= 5;
|
||||
}
|
||||
}
|
||||
return new String(newS);
|
||||
};
|
||||
public static void main(String[] args) {
|
||||
Scanner scanner = new Scanner(System.in);
|
||||
String s = scanner.next();
|
||||
System.out.println(replaceNumber(s));
|
||||
scanner.close();
|
||||
}
|
||||
}
|
||||
```
|
||||
|
Reference in New Issue
Block a user