java字符串去重写文件学习笔记

  /**
     * * 使用Scanner从键盘读取一行输入,去掉其中重复字符, 打印出不同的那些字符
     * aaaabbbcccddd
     *
     * 分析:
     * 1,创建Scanner对象
     * 2,创建HashSet对象,将字符存储,去掉重复
     * 3,将字符串转换为字符数组,获取每一个字符存储在HashSet集合中,自动去除重复
     * 4,遍历HashSet,打印每一个字符
     */
    @Test
    public void jihe9() {
        String ss = "aaaabbbcccdddwerwrweddcsecsefwewe";
        HashSet<Character> hs = new HashSet<>();
        char[] chars = ss.toCharArray();
        for (char c : chars) {
            hs.add(c);
        }
        System.out.println(hs);
        StringBuilder stringBuilder = new StringBuilder();
        for (Character s : hs) {
            stringBuilder.append(s.toString());
        }
        System.out.println(stringBuilder);
        System.out.println("88888888888888888888888888888");
        HashMap<Character, Integer> map = new HashMap<>();
        for (char c : chars) {
            map.put(c, !map.containsKey(c) ? 1 : map.get(c) + 1);
        }
        for (Character c : map.keySet()) {
            System.out.println(c+"="+map.get(c));
        }
        try {
            BufferedWriter bufferedWriter = new BufferedWriter(new FileWriter("x.txt"));
            for (Map.Entry<Character, Integer> m : map.entrySet()) {
                bufferedWriter.write(m.getKey() + ":" + m.getValue()+",");
            }
            System.out.println("写入成功!!");
            bufferedWriter.close();
        } catch (IOException e) {
            e.printStackTrace();
        }
    }

猜你喜欢

转载自blog.51cto.com/357712148/2317611