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

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

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届找工作求助阵地#
全部评论

相关推荐

迷茫的大四🐶:自信一点,我认为你可以拿到50k,低于50k完全配不上你的能力,兄弟,不要被他们骗了,你可以的
点赞 评论 收藏
分享
待现的未见之事:起码第一句要把自己的优势说出来吧。比如什么xx本27届学生,随时到岗....
点赞 评论 收藏
分享
评论
点赞
收藏
分享

创作者周榜

更多
牛客网
牛客企业服务