本文共 700 字,大约阅读时间需要 2 分钟。
键盘录入一个字符串,去掉其中重复字符,打印出不同的那些字符,必须保证顺序。例如输入:aaaabbbcccddd,打印结果为:abcd。
首先我们分析LinkedHashSet是Set集合的一个实现,具有set集合不重复的特点,同时具有可预测的迭代顺序,也就是我们插入的顺序。
当我们输入aaaabbbcccddd时,LinkedHashSet会发挥作用,把我们输入的内容在遍历的过程中去除重复,代码如下:public static void main(String[] args) { Scanner sc=new Scanner(System.in); System.out.println("请输入字符串:"); String a=sc.next(); char[] arr=a.toCharArray();//将录入的字符串转为char数组 LinkedHashSetset= new LinkedHashSet ();//因为是char类型数组,所以这里数组类型要写成char的包装类 for(char c:arr) { //这里使用增强型for循环,定义一个char类型的变量c将数组中的字符逐个传到c中; set.add(c);//将变量c所指的字符添加到set集合中, } for(char ch:set) { //这里再使用增强型for循环,把集合遍历打印出来; System.out.print(ch); } }
转载地址:http://ekprn.baihongyu.com/