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)


相关推荐

  • Asp.net Core + EF Core + Bootstrap搭建的MVC后台通用管理系统模板(跨平台版本)

    Asp.net Core + EF Core + Bootstrap搭建的MVC后台通用管理系统模板(跨平台版本)6月随着.NETCOREPREVIEW2的发布,JUCHEAP的CORE版本也由之前的JuCheapCore1.0升级到了JuCheapCore2.0,并且已经在将core版本应用到了生产环境中,现在支持的数据库库有SQLSERVER2008以上,以及SQLITE;项目源代码地址,在文末.部署到ubuntu16.04下的效果如下:源码下载地址:h…

  • 2021vue经典面试题_vue面试题大全

    2021vue经典面试题_vue面试题大全面试题(2020)Vue面试题汇总博客说明文章所涉及的资料来自互联网整理和个人总结,意在于个人学习和经验汇总,如有什么地方侵权,请联系本人删除,谢谢!1、对于MVVM的理解MVVM是Model-View-ViewModel的缩写。Model代表数据模型,也可以在Model中定义数据修改和操作的业务逻辑。View代表UI组件,它负责将数据模型转化成UI展现出来。ViewModel监听模型数据的改变和控制视图行为、处理用户交互,简单理解就是一个同步View和Model的对

  • Java发送邮件工具类

    Java发送邮件工具类java如何发送邮件?这里有一个简单易用的java代码发送邮件的工具类

  • 最新SEO寄生虫排名

    最新SEO寄生虫排名黑帽SEO怎么做寄生虫这里说下寄生虫问题!需要的可以联系qQ325和056还有6854.对于小编来说!对寄生虫程序的选择没啥讲究!顺手好用就好!最近新出很多寄生虫!各种各样的,说得有多牛逼多牛逼的!其实都是骗人的、哪个在营销自己的产品的时候不把自己的产品说得好一些!难道会告诉大家垃圾吗?实际上市面上的虫子程序都是把原始版本改版过来的!有的把程序和菜刀软件二合一起来为了大家方便生成,看着简单易操作…

  • BigDecimal 比较大小

    BigDecimal 比较大小BigDecimala=newBigDecimal(101);BigDecimalb=newBigDecimal(111);//使用compareTo方法比较//注意:a、b均不能为null,否则会报空指针if(a.compareTo(b)==-1){System.out.println(“a小于b”);}if(a.compareTo(b)==0){System.out.println(“a等于b”);}if(a.compareT.

  • viewpager循环滚动_jq实现轮播图循环

    viewpager循环滚动_jq实现轮播图循环Viewpager图片自动轮播无限循环是Android开发中经常用到的功能,功能实现起来也比较简单。虽然如此,但是很多情况下做出来的效果并不太让人满意,甚至有些上线的项目自动轮播上也会出现一些bug。比如切换过程中出现空白页面,有些甚至在滑动过程中造成程序崩溃。本篇文章将实现ViewPager图片自动轮播无限循环,而且页面切换效果非常流畅。还是先看效果图:页面循环切换最容易出现问题的地方…

发表回复

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

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