常用的几个java集合(ArrayList,LinkedList,HashSet,TreeSet,HashMap)_arraylist、linkedlist、 hashmap 和 treeset-程序员宅基地

技术标签: java基础  java  

集合

(1)集合主要分为单列Collection接口和双列Map接口
(2)Set接口和List接口继承于Collection接口
(3)Map接口为独立接口
(4)List可重复集合:ArrayList,LinkedList等
(5)Set不可重复集合:HashSet,TreeSet等
(6)Map集合:HashMap等

集合


Collection接口

—List有序,可重复

  • ArrayList
       优缺点: 底层数据结构为数组,查询快,增删慢。
  • LinkedList
       优缺点: 底层数据结构为链表,查询慢,增删快。

—Set无序,唯一(不可重复)

  • HashSet
    底层数据结构为哈希表(无序,唯一)
    1.如何保证元素的唯一性?
    依赖两个方法:hashCode()和equals()
  • TreeSet
    底层数据结构为红黑树(有序,唯一)
    1.如何保证元素排序?
    自然排序
    比较器排序
    2.如何保证元素唯一性?
    根据比较的返回值是否是0来决定
    针对Collection集合使用
    Collection集合的使用

HashMap

未完成

参考文章:
Java集合中List,Set以及Map等集合体系详解(史上最全)

版权声明:本文为博主原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。
本文链接:https://blog.csdn.net/litte_plane/article/details/105610155

智能推荐

R语言读写二进制文件:WriteBin()、readBin()-程序员宅基地

文章浏览阅读1.1k次。R语言读写二进制文件:WriteBin()、readBin()目录R语言读写二进制文件:WriteBin()、readBin()WriteBin()和readBin()语法写入二进制文件读取二进制文件二进制文件是一种只包含以位和字节形式存储的信息的文件,即0和1。它们不是人类可读的,因为其中的字节转换成字符和符号,这些字符和符号包含许多其他不可打印的字符。尝试使用任何文本编辑器读取二进制文件都将显示一堆奇奇怪怪的字符。二进制文件必须由特定程序读取..._readbin

git排除某文件的提交_sourcetree .git 强制忽略指定文件不提交-程序员宅基地

文章浏览阅读435次。在公司写项目,大部分都会用到 svn 或 git 提交代码到服务器。我们公司用的GIT,每个程序员有自己的独立分支,各写各的代码互不冲突,最终合并到主分支再解决相同代码冲突问题。这时候会遇到一些配置文件提交的问题,每个程序员在自己的电脑都有自己的环境,每个环境配置各不相同,这样导致提交代码的时候都把自己的配置文件一起提交上去,这样每次提交都需要单独合并解决配置问题的冲突,对于更新平凡的项目来说很麻..._sourcetree里可以忽略某些提交吗?

JedisPool的testOnBorrow、testOnReturn和testWhileIdle参数的实现原理_jedis testonborrow-程序员宅基地

文章浏览阅读8.2k次,点赞6次,收藏13次。前言我们平时使用jedispool来连接Redis的集群、sentinel或者主从服务器,经常会遇到testOnBorrow、testOnReturn和testWhileIdle这些参数的设置问题,我们知道连接Redis服务器的连接是维护在通用对象池中的,如果想要正确的、符合自己业务场景的设置这些参数,需要了解其底层原理。Jedispool和genericObjectPool的关系我们翻到j..._jedis testonborrow

【STM32】 4X4矩阵键盘电路_stm32 4x4矩阵键盘-程序员宅基地

文章浏览阅读7.1k次,点赞4次,收藏33次。【STM32】 4X4矩阵键盘电路_stm32 4x4矩阵键盘

java中下拉框select和单选按钮的回显_"<select name=\"cid\"> <option value=\"0\">请选择</op-程序员宅基地

文章浏览阅读1.9k次。前提:&lt;%@ taglib uri="http://java.sun.com/jsp/jstl/core" prefix="c"%&gt;1.下拉框select&lt;select name="departmentId" id="departmentId"&gt; &lt;option value="0"&gt;请选择部门&_" 请选择

ORACLE---Unit04: SQL(高级查询)-程序员宅基地

文章浏览阅读94次。---(重点复习:子查询、分页查询、decode)--- SQL(高级查询)--- 子查询--- 子查询是嵌套在其它SQL语句当中的,目的是为嵌套的SQL提供数据,以便其执行。---查看谁的工资高于CLARK?---1.先查CLARK的工资SELECT sal FROM emp_RR WHERE ename='CLARK';--->2450---2.工资高于CLARK的员工信息SEL..._"在子查询依赖于管道,其中一个不在where子句中,启用:set enable_pipeline=true;\","

随便推点

无法重启计算机名,升级win10,无法重启计算机。-程序员宅基地

文章浏览阅读86次。您好!感谢您联系微软技术支持。我了解到您遇到关于这边的问题请参考以下步骤解决请问是否能进入系统状态?可能是由于第三方软件干扰造成的建议您将所有第三方的杀毒优化软件卸载后做干净启动看还会出现情况么1.同时按Windows键+R,输入msconfig,回车2.点击在“常规”选项上,点击“正常启动”。3.点击在“服务”选项卡上,点按或单击选中“隐藏所有 Microsoft 服务”复选框,然后点按或单击..._计算机名更改后重启不了

Linux救援模式启动ssh服务,Linux服务器的紧急救援模式RescueLayer是什么?-程序员宅基地

文章浏览阅读941次。在某些情况下, 系统无法启动或系统崩溃,我们只能通过重装系统来处理. 但极少数高端机房, 能提供Linux服务器的紧急救援模式RescueLayer, 让你可以ssh进入服务器去尝试修复. 这里我们只是给出机房对RescueLayer的介绍, 便于参考. 我们并不提供RescueLayer的任何技术支持. 进入RescueLayer后的任何操作都需要您自己完成.The RescueLayer Ke..._rescue kernel

[cernRoot] how to get contours from a TH2D_cern root th2d-程序员宅基地

文章浏览阅读567次。here, i use a TMultiGraph to save the gotten contours, because the contours may be not closed in a TH2D, with the function TMultiGraph * GetContours(const char * fn, const char * th2dname, int nlevel)._cern root th2d

erdas正射校正、数据融合、影像镶嵌_erdas imagine制作dtm和dom-程序员宅基地

文章浏览阅读1.2w次,点赞15次,收藏104次。在几个传统影像处理软件中,erdas的处理速度往往是最快的(比起ENVI、argis),而且img格式稳定,不易变化,个人使用首推erdas,当然大规模生产的话还是任务订单式的GXL好,它在批处理的路上走得更远,以web方式提交任务,以集群方式处理数据,高并发的处理能力,估计很多传统做影像处理的人要失业,扯远了。下面是望神州公司的一个erdas操作教程,本人无意抄袭,只想给正在用ERDAS的人..._erdas imagine制作dtm和dom

idea连接数据库 The specified database user/password combination is rejected: com.mysql.cj报错_2021版idea连接阿里云mysql出现the specified database user/p-程序员宅基地

文章浏览阅读1.2w次,点赞4次,收藏3次。报错如下图:解决方法:jdbc:mysql://localhost:3306/test?useUnicode=true&characterEncoding=UTF-8&useJDBCCompliantTimezoneShift=true&useLegacyDatetimeCode=false&serverTimezone=UTC转载自:https://blog.csdn.net/weixin_39938635/article/details/90212775.._2021版idea连接阿里云mysql出现the specified database user/password combinatio

linux服务器安装anaconda总结_home/jovyan在哪里-程序员宅基地

文章浏览阅读701次。一、官网下载linux版安装包https://repo.anaconda.com/archive/Anaconda3-2019.10-Linux-x86_64.sh二、上传并进行安装将安装包拷贝至服务器,使用cd命令进入安装包所在位置,比如我拷到的是/home下面,就是cd /home。然后使用bash进行安装。cd /homebash Anaconda3-2019.10-Linux-x86_64.sh按照要求输入yes同意阅读协议,并一直按住enter键翻到底开始安装.._home/jovyan在哪里

推荐文章

热门文章

相关标签