华为OD机试 2024E卷题库疯狂收录中,刷题 <a rel="nofollow" href="https://blog.csdn.net/qq_40374604/category_12822407.html" style="color: red;">点这里</a>。

实战项目访问:http://javapub.net.cn/

专栏导读

本专栏收录于 《华为OD机试(JAVA)真题(E卷+D卷+A卷+B卷+C卷)》

刷的越多,抽中的概率越大,私信javapub,备注华为OD,加入华为OD刷题交流群,每一题都有详细的答题思路、详细的代码注释、3个测试用例、为什么这道题采用XX算法、XX算法的适用场景,发现新题目,随时更新,全天CSDN在线答疑。


表示数字

将一个字符串中所有的整数前后加上符号“*”,其他字符保持不变。连续的数字视为一个整数。

输入描述:
输入一个字符串
输出描述:
字符中所有出现的数字前后加上符号“*”,其他字符保持不变
示例1

输入

Jkdi234klowe90a3

输出

Jkdi*234*klowe*90*a*3*

Java 编程

package cn.net.javapub.demo2.demo;

/**
 * @author: shiyuwang
 * @url: http://javapub.net.cn
 */

import java.io.*;

public class Main {
    public static void main(String[] args) throws IOException {
        BufferedReader br = new BufferedReader(new InputStreamReader(System.in));
        String str = "";
        while ((str = br.readLine()) != null) {
            char[] c = str.toCharArray();
            StringBuilder sb = new StringBuilder();
            int i = 0;
            while (i < c.length) {
                if (c[i] >= '0' && c[i] <= '9') {
                    sb.append("*");
                    sb.append(c[i]);
                    while (++i < c.length && c[i] >= '0' && c[i] <= '9') {
                        sb.append(c[i]);
                    }
                    sb.append("*");
                } else {
                    sb.append(c[i]);
                    i++;
                }
            }
            System.out.println(sb.toString());
        }
    }
}

展示效果:

在这里插入图片描述

🏆下一篇: 华为OD机试 - 记票统计 (Java 2024 E卷 100分) 🏆本文收录于, 搬砖工逆袭Java架构师

刷的越多,抽中的概率越大,私信javapub,备注华为OD,加入华为OD刷题交流群,每一题都有详细的答题思路、详细的代码注释、3个测试用例、为什么这道题采用XX算法、XX算法的适用场景,发现新题目,随时更新,全天CSDN在线答疑。

优质合集推荐

《突击面试》Java面试题合集
《面试1v1》
《编程工作总结》