Java集合有哪些?「建议收藏」

Java集合有哪些?「建议收藏」Java集合有哪些?java集合分三种,List、Set、Map,这三种集合适用于不同的场景List:适用于有序,可重复的集合Set:适用于不可重复集合Map:适用于键值对的存储注:通常List与Map最为常用每个集合常用的实现类有哪些?List:ArrayList与LinkedListSet:HashSet与TreeSetMap:HashMap与TreeMap与HashTable每个集合不同的实现类的区别是什么?List:**ArrayList:**数组实现的,常用于

大家好,又见面了,我是你们的朋友全栈君。

Java集合有哪些?

java集合分三种,List、Set、Map,这三种集合适用于不同的场景

  • List:适用于有序,可重复的集合
  • Set:适用于不可重复集合
  • Map:适用于键值对的存储
    注:通常List与Map最为常用

每个集合常用的实现类有哪些?

  • List: ArrayList与LinkedList
  • Set: HashSet与TreeSet
  • Map: HashMap与TreeMap与HashTable

每个集合不同的实现类的区别是什么?

  1. List:
    ArrayList:数组实现的,常用于查询,因为他不需要移动指针,玩的是数据
    LinedList: 链表实现的,常用与增删改查,因为他不需要移动数据,玩的是指针
    Vectory: 线程安全的,出现问题会抛出异常需要手动捕获(不常用)
    Stack:继承自Vector,实现一个后进先出的堆栈(不常用)

  2. Set:
    HashSet:哈希表实现的, 数据无序, 可以放一个Null值,存储单列数据
    TreeSet:二叉树实现的,数据自动排序,不允许放null值,存储单列数据

  3. Map:
    TreeMap: 二叉树实现的,数据有序,HashTable 与 HashMap无序
    HashMap:线程不安全,效率快,适用于单线程操作
    HashTable:线程安全,因为底层都加了synchronized关键字来确保线程同步,适用于多线程操作

总结

  • List、Set实现Collection接口, Map是个顶级接口
  • List、Set存储单列数据,Map存储键值对
  • List有序可重复; Set不可重复并且最多只能存一个Null;Map键值对存储并且键不可重复,值可以重复

友情提示

HashMap与ArrayList最为常用,必须掌握

落款

  全部文字都是自己纯手敲
  关注小凡,欢迎大家与我一起讨论技术,一起学习

同博主好文章

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 举报,一经查实,本站将立刻删除。

发布者:全栈程序员-用户IM,转载请注明出处:https://javaforall.cn/156578.html原文链接:https://javaforall.cn

【正版授权,激活自己账号】: Jetbrains全家桶Ide使用,1年售后保障,每天仅需1毛

【官方授权 正版激活】: 官方授权 正版激活 支持Jetbrains家族下所有IDE 使用个人JB账号...

(0)


相关推荐

  • 深度学习笔记(七)–ResNet(残差网络)

    深度学习笔记(七)–ResNet(残差网络)内容来自吴恩达老师视频,网易云课堂有哦ResNets非常非常深的神经网络是很难训练的,因为存在梯度消失和梯度爆炸问题。ResNets是由残差块(Residualblock)构建的,首先解释一下什么是残差块。这是一个两层神经网络,在层进行激活,得到,再次进行激活,两层之后得到。计算过程是从开始,首先进行线性激活,根据这个公式:,通过算出,即乘以权重矩阵,再加上偏差因…

  • 实现dubbo服务降级

    实现dubbo服务降级dubbo降级服务使用dubbo在进行服务调用时,可能由于各种原因(服务器宕机/网络超时/并发数太高等),调用中就会出现RpcException,调用失败。服务降级就是指在由于非业务异常导致的服务不可用时(上面举得例子),可以返回默认值,避免异常影响主业务的处理。dubbo服务降级配置mock配置方式dubbo官方文档上使用一个mock配置,实现服务降级。mock只在出现非业务异常(比如超时,网络

  • Ubuntu 常用解压与压缩命令「建议收藏」

    Ubuntu 常用解压与压缩命令「建议收藏」Ubuntu常用解压与压缩命令.tar文件#仅打包,并非压缩tar-xvfFileName.tar#解包tar-cvfFileName.tarDirName#将DirName和其下所有文件(夹)打包.gz文件#.gzgunzipFileName.gz#解压1gzip-dFileName.gz#解压2gzipFil…

  • 存储过程基础知识

    什么是存储过程呢?存储过程就是作为可执行对象存放在数据库中的一个或多个SQL命令。 通俗来讲:存储过程其实就是能完成一定操作的一组SQL语句。http://hovertree.com/h/

    2021年12月23日
  • h2数据库连接mysql_H2数据库简单使用操作「建议收藏」

    h2数据库连接mysql_H2数据库简单使用操作「建议收藏」h2database官网下载客户端控制台h2databaseMaven配置com.h2databaseh21.4.1991控制台新建数据库与连接数据库1.1建库windows系统下点击h2/bin/h2.bat启动控制台应用程序鼠标右键点击桌面右下角图标Createanewdatabase…例如在k盘h2目录下新建helloForm数据库,则填写路径为k:/h2/helloForm…

  • 分苹果算法「建议收藏」

    分苹果算法「建议收藏」题目内容:把M个同样的苹果放在N个同样的盘子里,允许有的盘子空着不放,问共有多少种不同的分法?M,N为自然数。说明:如有7个苹果,2个盘子,则(5,1,1)和(1,5,1)和(1,1,5)都是同一种分法。输入描述第一行一个整数表示数据的组数(多组数据),对于每组数据第一行是苹果个数M(1≤m≤100),第二行是盘子个数N(1≤n≤

    2022年10月12日

发表回复

您的电子邮箱地址不会被公开。

关注全栈程序员社区公众号