哈哈哈,get了一个技巧,终于不要既存位置有存出现次数了,直接使用 LinkedHashMap 即可。

import java.util.HashMap;
import java.util.LinkedHashMap;
public class Solution {
    //Insert one char from stringstream
    HashMap map = new LinkedHashMap();//有序的hashmap
    public void Insert(char ch)
    {
        map.put(ch, map.getOrDefault(ch,0)+1);
    }
  //return the first appearence once char in current stringstream
    public char FirstAppearingOnce()
    {
        for(Character ch:map.keySet()) {
            if(map.get(ch)==1) {
                return ch;
            }
        }
        return '#';
    }
}