mirror of
https://github.com/youngyangyang04/leetcode-master.git
synced 2025-07-08 00:43:04 +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
|
```java
|
||||||
import java.util.Scanner;
|
import java.util.Scanner;
|
||||||
|
|
||||||
class Main {
|
public class Main {
|
||||||
public static void main(String[] args) {
|
|
||||||
Scanner in = new Scanner(System.in);
|
public static String replaceNumber(String s) {
|
||||||
String s = in.nextLine();
|
int count = 0; // 统计数字的个数
|
||||||
StringBuilder sb = new StringBuilder();
|
int sOldSize = s.length();
|
||||||
for (int i = 0; i < s.length(); i++) {
|
for (int i = 0; i < s.length(); i++) {
|
||||||
if (Character.isDigit(s.charAt(i))) {
|
if(Character.isDigit(s.charAt(i))){
|
||||||
sb.append("number");
|
count++;
|
||||||
}else sb.append(s.charAt(i));
|
|
||||||
}
|
}
|
||||||
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