1、题目描述:
输入一个字符串,求出该字符串包含的字符集合
输出描述:
每组数据一行,按字符串原有的字符顺序,输出字符集合,即重复出现并靠后的字母不输出。
输入例子1:
abcqweracb
输出例子1:
abcqwer
2、思路:
直接用set集合去重。
3、代码:
import java.util.*; import java.lang.*; public class Main{ public static void main(String [] args){ Scanner scan=new Scanner(System.in); while(scan.hasNext()){ String s=scan.next(); LinkedHashSet<Character> set=new LinkedHashSet<>(); for(int i=0;i<s.length();i++){ char temp=s.charAt(i); set.add(temp); } StringBuffer sb=new StringBuffer(); Iterator iterator=set.iterator(); while(iterator.hasNext()){ Object c=iterator.next(); sb.append(c); } System.out.println(sb.toString()); } } }
注:代码还可以继续优化,直接在set.add(temp)处加判断,能插进去,就直接sb.append即可,因此不需要set集合有序了。