首页 > 编程语言 >java——集合——Set集合——Set集合的概述&HashSet集合介绍

java——集合——Set集合——Set集合的概述&HashSet集合介绍

时间:2022-11-19 16:59:06浏览次数:32  
标签:set java HashSet 接口 Set 集合

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

Set集合的概述

  • java.util.Set接口和java.util.List接口一样,同样继承自Collection接口,它与Collection接口中的方法基本一致,并没有对Collection接口进行功能上的扩充,只是比Collection接口更加严格了。与List接口不同的是,Set接口中元素无序,并且都会以某种规则保证存入的元素不出现重复。

  • Set集合有多个子类,这里我们介绍其中的java.util.HashSetjava.util.LinkedHashSet这两个集合。

 

 

 

 

 

 

 

 

 

 

HashSet集合介绍

  • java.util.Set接口 extends Collection接口
    Set接口的特点:
    1.不允许存储重复的元素
    2.没有索引,没有带索引的方法,也不能使用普通的for循环遍历
    java.util.HashSet集合 implements Set接口

  • HashSet特点:
    1.不允许存储重复的元素
    2.没有索引,没有带索引的方法,也不能使用普通的for循环遍历
    3.是一个无序的集合,存储元素和取出元素的顺序有可能不一致
    4.底层是一个哈希表结构(查询的速度非常的快)

public class Demo01Set {
    public static void main(String[] args) {
        Set<Integer> set = new HashSet<>();
        //使用add方法往集合中添加元素
        set.add(1);
        set.add(3);
        set.add(2);
        set.add(1);
        //使用迭代器遍历set集合
        Iterator<Integer> it = set.iterator();
        while (it.hasNext()){
            Integer n = it.next();
            System.out.println(n);//1,2,3
        }
        //使用增强for遍历set集合
        System.out.println("-----------------");
        for (Integer i : set) {
            System.out.println(i);
        }
    }
}
 

标签:set,java,HashSet,接口,Set,集合
From: https://www.cnblogs.com/xiaobaibailongma/p/16906417.html

相关文章

  • Java泛型擦除与转换
    Java泛型擦除与转换1.*擦除与转换在严格的泛型代码里,带泛型声明的类总应该带着类型参数。但为了与老的Java代码保持一致,也允许在使用带泛型声明的类时不指定实际的类型......
  • 100:@property装饰器_get和set方法
    ###@property装饰器@property可以将一个方法的调用方式变成“属性调用”。下面是一个简单的示例,让大家体会一下这种转变:#简单测试@propertyclassEmployee:@pr......
  • java——集合——Set集合——哈希值
    哈希值哈希值:是一个十进制的整数,由系统随机给出(就是对象的地址值,是一个逻辑地址,是模拟出来得到地址,不是数据实际存储的物理地址)在Object类有一个方法,可以获取对......
  • java——集合——List集合——ArrayList集合
                                                  ArrayList集合Arr......
  • java——集合——List集合——LinkedList集合
    LinkedList集合java.util.LinkedList集合implementsList接口##**LinkedList集合的特点:**1.底层是一个链表结构:查询慢,增删快2.里边包含了大量操作首尾元素的方法注......
  • Java——集合——数据结构——栈、队列、数组、链表、红黑树
                                                      ......
  • JAVA仓库管理系统(附源码+调试)
    JAVA仓库管理系统——三只松鼠仓库管理系统功能描述(1)登录模块:登录信息等存储在数据库中(2)基本档案管理模块:供货商管理,销售商管理,货品档案管理,仓库管理(3)采购订货模块:用户可以......
  • Git - revert 和 reset 命令
    Gitrevert命令该命令会重新进行一次新的提交,以达到撤销某次提交的目的。如果您已经将commit链推送到远端仓库,则revert是一种非常友好的方式。使用场景撤回commit......
  • 【JAVA】线程
    线程概念线程:程序进程:运行中的程序线程由进程创建,是进程的实体。一个进程可以有多个线程。单线程,多线程并发:同一时刻多个任务交替进行。单核cpu并行:同一时刻多个任......
  • 【Java】 Springboot+Vue 大文件断点续传
     同事在重构老系统的项目时用到了这种大文件上传 第一篇文章是简书的这个:https://www.jianshu.com/p/b59d7dee15a6 是夏大佬写的vue-uploader组件:https://www......