题解 | #表示数字#

表示数字

https://www.nowcoder.com/practice/637062df51674de8ba464e792d1a0ac6

这道题目难点如何判断这个数字是不是第一个,是不是最后一个,前面或者后面是否有数字

import java.util.*;

// 注意类名必须为 Main, 不要有任何 package xxx 信息
public class Main {

    public static void main(String[] args) {
        Scanner in = new Scanner(System.in);
        // 注意 hasNext 和 hasNextLine 的区别
        while (in.hasNextLine()) { // 注意 while 处理多个 case
            String a = in.nextLine();
            LinkedList<Character> c = new LinkedList<>();
            for (int i = 0; i < a.length(); i++) {
                c.add(a.charAt(i));
                //前面不是数字
                if (Character.isDigit(a.charAt(i))) {
                    if (i == 0 || !Character.isDigit(a.charAt(i - 1))) {
                        c.add(c.size() - 1, '*');
                    }
                    if (i == a.length() - 1 || !Character.isDigit(a.charAt(i + 1))) {
                        c.add('*');
                    }
                }
            }
            StringBuilder strb = new StringBuilder();
            for (Character character : c) {
                strb.append(character);
            }
            System.out.println(strb.toString());
        }
    }
}

全部评论

相关推荐

不愿透露姓名的神秘牛友
昨天 18:06
工作一年多,一直在同一家公司,互联网,薪资待遇很好,在同龄人里可以算得上不错的,纯结果导向,一直就是不停有人拿鞭子在你后面追着你要业绩要kpi,每个月都要比上个月好,维持现状也是失败。其实工作强度没有特别大,纯工作加班不多(但会经常晚上开会到很晚),个人能力也还凑合过得去短时间不会被优化,但就是莫名其妙越来越抑郁,越来越容易崩溃,一点小事都会疯狂想辞职,昨晚想到又要上班失眠一整晚,每天睡五六个小时起来再通勤一小时,到公司就是饭也不想吃水也不想喝,什么简单的消息都不想点开处理,原以为有钱一定会有快乐,但真的拿很多钱以后反而痛苦直线上升,现在还没有涨薪前的身心状态好,就是被困在不断的日报-周报-月...
勤奋努力的大熊猫已转码:我给你个窍门,可能会有所缓解:工作的时候不要有情绪,像个机器人。不论是出错被骂、完不成业绩、一大堆todo需要去做,都不管它,像个机器人一样分析,分析完就做别带有情绪(比如紧张、担心、恐惧),下了班再恢复正常人。这个窍门是我搞科研的时候学到的,那个时候我基本是007,压力也很大,后来发现这么搞效果很好
点赞 评论 收藏
分享
10-17 16:07
门头沟学院 Java
牛牛大你18号:在汇报,突然弹出来,,领导以为我在准备跳槽,刚从领导办公室谈心出来
点赞 评论 收藏
分享
评论
点赞
收藏
分享
牛客网
牛客企业服务