java高级特性——集合之Set接口及实现类

四.Set接口

Set接口是Collection接口另外一个常用子接口,Set接口描述的是一种简单的集合,集合中的对象并不按特定的方式排序,并且不能保存重复的对象,也就是说Set接口可以存储一组唯一的无序的对象,set中存放的是对象的引用,采用对象的equals()方法比较两个对象是否相等,set接口常用的实现类有HashSet

4.1使用HashSet类动态存储数据

HashSet集合底层是哈希表结构,查询速度快,是无序集合,没有索引,允许存储null,线程不安全但运行速度快,底层数据结构是哈希表,存储到Hashset中的对象,必须实现hashcode和equals方法,保证唯一性。

对象的哈希值:JAVA中,每一个类的对象,都具有一个十进制数 ,叫做这个对象的哈希值,所有类都是Hashset的子类,每一个都有方法hashCode()

Hashset类的一些常用方法:

public class TestSet {
    public static void main(String[] args) {
        HashSet set = new HashSet();
        set.add("abc");
        set.add("aach");
        set.add("12");
        set.add("nihao");
        set.add(123);
        set.add("da");
        System.out.println(set);
        System.out.println("Set的哈希值"+set.hashCode());//重写Hashset的hashcode和equals方法
        System.out.println("set的容量"+set.size());
        System.out.println("判断集合是否为空"+set.isEmpty());
        System.out.println("查找集合中的元素"+set.contains(123));
        System.out.println(set.remove("nihao"));//移除集合中的元素
        System.out.println(set);

猜你喜欢

转载自blog.csdn.net/kkkyzp/article/details/121249031