题解 | #找出字符串中第一个只出现一次的字符#

找出字符串中第一个只出现一次的字符

https://www.nowcoder.com/practice/e896d0f82f1246a3aa7b232ce38029d4

import java.util.*;

// 注意类名必须为 Main, 不要有任何 package xxx 信息
public class Main {
    public static void main(String[] args) {
        Scanner in = new Scanner(System.in);
        // 注意 hasNext 和 hasNextLine 的区别

        String str = in.nextLine();
        Character keyChar = ' ';
        boolean isExist = false;

        LinkedHashMap<Character, Integer> map = new LinkedHashMap<Character, Integer>();

        for (int i = 0; i < str.length(); i++) {
            keyChar = str.charAt(i);
            if (!map.containsKey(keyChar)) {  //map中不存在该key字符
                map.put(keyChar, 1);
            } else {
                map.replace(keyChar, map.getOrDefault(keyChar, 0) + 1);     //计数加一
            }
        }

        for (Character c : map.keySet()) {
            if (map.get(c) == 1) {
                System.out.println(c);
                isExist = true;
                break;  //不存在
            }
        }
        //不存在
        if (!isExist) {
            System.out.println(-1);
        }
    }
}

#你们的毕业论文什么进度了##23届找工作求助阵地#
全部评论

相关推荐

02-01 19:48
门头沟学院 Java
神哥了不得:(非引流)直接暑期吧,没时间日常了,老鱼简历把水印去了,或者换个模板,简历字体大小都不太行,建议换2个高质量的项目,面试应该还会再多一些
点赞 评论 收藏
分享
评论
点赞
收藏
分享

创作者周榜

更多
牛客网
牛客企业服务