输入一个字符串,求出该字符串包含的字符集合,按照字母输入的顺序输出。
数据范围:输入的字符串长度满足 1-100 ,且只包含大小写字母,区分大小写。
本题有多组输入
输入描述:
每组数据输入一个字符串,字符串最大长度为100,且只包含字母,不可能为空串,区分大小写。
输出描述:
每组数据一行,按字符串原有的字符顺序,输出字符集合,即重复出现并靠后的字母不输出。
输入例子1:
abcqweracb
输出例子1:
abcqwer
输入例子2:
aaa
输出例子2:
a
import java.util.Scanner;
import java.util.Set;
import java.util.HashSet;
import java.lang.StringBuilder;
public class Main{
public static void main(String[] args){
Scanner sc=new Scanner(System.in);
while(sc.hasNext()){
String str=sc.nextLine();
System.out.println(killRepeat(str));
}
}
public static String killRepeat(String str){
//HashSet去重不排序,TreeSet去重排序
Set<Character> set=new HashSet<>();
StringBuilder sb=new StringBuilder();
char[] c=str.toCharArray();
int length=c.length;
for(int i=0;i<length;i++){
if(set.add(c[i])){
sb.append(c[i]);
}
}
return sb.toString();
}
}
注意stringbuilder是java.lang包下的。