提取不重复的整数——HashSet,TreeSet和LinkedHashSet的区别

来源:互联网 发布:java rtf格式转换pdf 编辑:程序博客网 时间:2024/05/20 14:17

提取不重复的整数

输入一个int型整数,按照从右向左的阅读顺序,返回一个不含重复数字的新的整数。

考察HashSet,TreeSet和LinkedHashSet的区别

1.hashset:不保证元素的排列顺序,顺序有可能发生变化
 不是同步的
 集合元素可以是null,但只能放入一个null

2、LinkedHashSet:LinkedHashSet集合同样是根据元素的hashCode值来决定元素的存储位置,但是它同时使用链表维护元素的次序。这样使得元素看起 来像是以插入顺序保存的,也就是说,当遍历该集合时候,LinkedHashSet将会以元素的添加顺序访问集合的元素。

3、TreeSet:TreeSet不重复并且排序。

import java.util.Iterator;
import java.util.LinkedHashSet;
import java.util.Scanner;
import java.util.Set;


public class Main {
     public static void main(String[] args){
    Set<String> set= new LinkedHashSet<String>();
    //HashSet,TreeSet中值都不能重复,TreeSet中的会自动排序而HashSet中的值不会
    Scanner scan=new Scanner(System.in);
    String str=scan.nextLine();
    String[] strings=str.split("");
    for(int i=strings.length-1;i>=0;i--){
    set.add(strings[i]);
    }
    Iterator<String> iterater=set.iterator();
    while(iterater.hasNext()){
    System.out.print(iterater.next());
    }
     }
}

1 0