简要

  • java中的Set集合常用的实现类为:HashSet(最常用)和TreeSet
  • Set集合与其他存储类型有个较大的不同:无重性、无序性(像数学中集合的特性)
  • HashSet默认可存储任意类型(当然用指定泛型可以修改);TreeSet只能存储某种类型(当添加第一个元素时就已经确定了,指定Object泛型也只能存储一种类型)
  • Set集合没有直接去遍历的方法,间接遍历的方法:迭代器对象、转换为数组、转换为List集合
  • 注意实现类HashSet、TreeSet以及要用到的Iterator需要从java.util模块中引入

代码了解

根据简要上代码来了解吧

//在Test.java文件中import java.util.*;public class Test{public static void main(String[] args){//1. 创建个可存储任意类型的HashSet集合:set1HashSet set1 = new HashSet();  //相当于HashSet<Object> set1 = new HashSet(); //给set1添加一些元素set1.add('a');set1.add(10);set1.add("str");set1.add(true);//2. 创建个只能存储String类型的HashSet集合:set2HashSet<String> set2 = new HashSet();//向set2中添加一些元素set2.add("hello");set2.add("nice");//3. 创建个TreeSet集合:set3TreeSet set3 = new TreeSet();//向set3中添加一些元素set3.add(1); //确定了只能添加整型类型元素set3.add(2);}
}

Set集合基本操作

后面的基本操作就用HashSet集合来了解吧,上代码

//在Test.java文件中import java.util.*;public class Test{public static void main(String[] args){HashSet set = new HashSet();//1. 添加元素set.add(10);set.add('a');set.add("nice");set.add('b');//2. 查看Set集合结构System.out.println(set);//3. 删除元素set.remove('b');//4. 转换为数组Object[] arr = set.toArray();//5. 转换为list集合ArrayList list = new ArrayList(set);//6. 迭代器对象方式遍历set集合Iterator iter = set.iterator();while(iter.hasNext()){System.out.print(iter.next()+" ");}System.out.println();//7. 转换为数组后方式遍历for (Object x:arr){System.out.print(x+" ");}System.out.println();//8. 转换为list集合后方式遍历for (int i=0;i<list.size();i++){System.out.print(list.get(i)+" ");}}
}

上述代码的运行结果:

 总结

从运行结果我们能看出无重性:不会出现相同的元素(即使添加了多次);无序性:后添加的排列顺序不一定在后面

留言

阅读者有反馈意见,请在评论区留言,我收到会答复!!!

java中的Set集合和基本操作相关推荐

  1. java List最大_在java中获取List集合中最大的日期时间操作

    取list集合中最大的日期, 可以用date max = collections.max(datelist);, 传入一个日期集合, 就可以获取, 工作中有这个需求, 就查找到这个, 代码如下 } e ...

  2. Java中如何克隆集合——ArrayList和HashSet深拷贝

    2019独角兽企业重金招聘Python工程师标准>>> 编程人员经常误用各个集合类提供的拷贝构造函数作为克隆List,Set,ArrayList,HashSet或者其他集合实现的方法 ...

  3. java中如何上送list集合_如何使用java中的list集合

    如何使用java中的list集合 发布时间:2020-06-26 14:45:11 来源:亿速云 阅读:88 作者:Leah 如何使用java中的list集合?针对这个问题,这篇文章详细介绍了相对应的 ...

  4. java 集合初始化_6种方法初始化JAVA中的list集合

    List 是 Java 开发中经常会使用的集合,你们知道有哪些方式可以初始化一个 List 吗?这其中不缺乏一些坑,今天栈长我给大家一一普及一下. 1.常规方式 List languages = ne ...

  5. Java中遍历Set集合的三种方法

    Map集合:链接: Map集合的五种遍历方式及Treemap方法 Set集合:链接: Java中遍历Set集合的三种方法 TreeSet集合:链接: Java深入了解TreeSet,和迭代器遍历方法 ...

  6. Java中遍历Map集合的5种方式总结

    这篇文章主要给大家介绍了关于Java中遍历Map集合的5种方式,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值. 方式一 通过Map.keySet使用iterator遍历 ...

  7. JAVA中的Map集合

    JAVA中的Map集合 1.Map简介 java.util.map接口 1.Map称为查找表,该数据结构的样子是一个"多行两列"的表格,左列为key,右列为value,Map总是根 ...

  8. 高薪程序员面试题精讲系列31之你熟悉Java中的哪些集合?

    一. 面试题及剖析 1. 今日面试题 Java中的集合你了解吗? 你熟悉Java中的哪些集合? 集合的顶级接口是哪个,集合的具体实现类有哪些? ...... 2. 题目剖析 我们在进行Java开发.代 ...

  9. Java中数组转集合总结

    一.使用Arrays.asList() 方法 package com.joshua317;import java.util.*;public class Main {public static voi ...

最新文章

  1. elasticsearch如何安全重启节点
  2. MFC视图滚动条的基本使用和C语言输出三角形的MFC版本
  3. DL之YoloV3:YoloV3论文《YOLOv3: An Incremental Improvement》的翻译与解读
  4. 关于c#中 的动态加载程序集
  5. VTK:八叉树时序用法实战
  6. 运维 服务器安装,IT服务器运维安装CentOS后,你要做的10件事
  7. OpenStack安装Neutron组件最后进行验证后发现Metadata agent ct节点不显示
  8. java学习(61):适配器
  9. ES6中的高阶函数:如同 a = b = c 一样简单
  10. 酷Q萌萌机器人_GitHub - Titvt/CQRobot: 酷Q机器人——麦萌萌小管家
  11. 外设驱动库开发笔记28:W5500以太网控制器
  12. web test performance tools / linux performance tools / windows performance tools
  13. 什么是mysql 的冗余备份_什么是数据库中的“数据冗余”?
  14. mixamo进不去_酷站推荐!3D人物动画工具
  15. 老式十字锁自动碰锁,换锁芯
  16. 首金奥运健儿杨倩,获得金牌和奖金缴纳个税吗?雅戈尔赠送她一套房,交税吗?
  17. tig - 必知的git界面化工具
  18. 矩阵的秩+基础解系的秩为什么等于n?
  19. 系统吞吐量、QPS、并发数、响应时间,以及提高吞吐量的思路
  20. js根据判断改变html字符串长度,JS获取字符串长度(包含汉字)的简单示例

热门文章

  1. 怎样清理苹果手机内存空间_这才是正确清理苹果手机内存的方法,清理后和新机一样流畅...
  2. c语言 异或_C语言知识点:运算符的优先级和结合性
  3. 用权集{5,7,2,3,6,8,9}构建一颗哈夫曼树给出过程
  4. K8S 集群安装和学习
  5. python换行符使用_python中怎么换行?
  6. 苹果手机充电口接触不良怎么办_ iPhone终于用上“安卓充电口”,苹果这回亏大了?...
  7. java水仙花数的代码如下及其讲解。
  8. 将python更新为最新版本_python升级问题
  9. java poi excel导出
  10. 阿里云域名解析避坑指南