1. 程式人生 > >java去除字符串中重復、不重復、消除重復後字符

java去除字符串中重復、不重復、消除重復後字符

rar pre har mov dal imp stat pub move

java去除字符串中重復、不重復、消除重復後字符

import java.util.HashSet;
import java.util.Set;

public class Main {

public static void main(String[] args) {
    String str = "aaasd";
    System.out.println("原字符串: "+str);
    Set<Character> set1 = new HashSet<Character>();
    Set<Character> set2 = new HashSet<Character>();
    Set<Character> set3 = new HashSet<Character>();
    //把字符串轉為字符數組
    char[] cs = str.toCharArray();
    //便利字符數組aaasd
    for(char c:cs){
        //把遍歷的字符加入set1(HashSet,無序不可重復)
        boolean b = set1.add(c);//asd
        if(!b){
            //b不等空就是有重復的字符,重復的字符加入set2
            set2.add(c);//a
        }
    }
    //把消除重復後的字符set1賦給Set3
    set3.addAll(set1);//asd
    //把消除的重復後的字符set1 - 重復的字符set2 = 不重復的字符
    set3.removeAll(set2);//asd-a = sd
    System.out.println("=========消除重復厚的字符=========");
    for ( char c : set1){
        System.out.print(c + "");
    }
    System.out.println("\n===========重復的字符===============");
    for (char c :set2){
        System.out.print(c + "");

    }
    System.out.println("\n========不重復的數組===========");
    for (char c :set3){
        System.out.print(c + "");
    }

}

}

java去除字符串中重復、不重復、消除重復後字符