查找字符串中出现过两次以上的字符

232 阅读1分钟
package com.hcmony.sword.dataStructure.array;

import com.alibaba.fastjson.JSON;

import java.util.*;

/**
 * <h3>查找字符串中出现过两次以上的字符</h3>
 *
 * @author hcmony
 * @since V1.0.0, 2019/9/23 16:43
 */
public class Test {
    public static void main(String[] args) {
        Set<Character> set = repetitionChar("adscdefgadscikegk");
        System.out.println(JSON.toJSONString(set));
    }

    public static Set repetitionChar(String s){
        Set<Character> sets = new HashSet<>();
        int[] arry = new int[26];
        for (int i=0;i<s.length();i++){
            arry[s.charAt(i)-'a'] ++;
        }

        for (int i=0;i<s.length();i++){
            if (arry[s.charAt(i)-'a']>1){
                sets.add(s.charAt(i));
            }
        }
        return sets;
    }



}

结果:["a","s","c","d","e","g","k"]