首页 > 编程语言 >Java集合

Java集合

时间:2024-03-13 17:30:51浏览次数:27  
标签:Map Set Java 元素 链表 线程 集合

集合中最重要的是ArrayList,LinkedList,HashMap这三种集合,首先我们先看一下下面这副整体的关于这三种集合关系图片

可以清晰的看到不管是List,Set还是 Map都有一个共同的父类就是Collection,这副图片当中虚线表示的是实现接口而实线表示的是实现接口的类,箭头所指的就是实现那个接口或者类的上一层。

接下来我们就说说List,Set,Map这三种集合它们的不同之处

List集合:元素是有序的,元素是可重复的,有索引可以很方便的拿出里面你想要的数据。

ArrayList:是对数组进行封装,它是一个顺序结构,其特点就是查询快,增删慢,线程不安全,效率高。

LinkedList:底层数据结构是链表,其特点就是查询慢,增删快,线程不安全,效率快,对头尾数据敏感。

Set集合:元素是无序的,通过链表进行存储,元素是不可重复的。

HashSet:特点就是线程不安全,效率高,允许存储null元素,元素无序且唯一。

TreeSet:基于TreeMap实现的,底层数据结构是红黑树。

Map集合:元素是不可重复的,通过键值对(成对出现)进行存储。 

HashMap:是可以序列化的,线程不安全,底层是基于数组、链表和红黑树实现的。特点就是查询快,通过计算散件码存储位置。

标签:Map,Set,Java,元素,链表,线程,集合
From: https://blog.csdn.net/Q1angJie/article/details/136685539

相关文章

  • 短链接资源集合 - Bitly, Tinyurl, Cutt, Shorturl, Rebrandly etc
    ShortURLPlatformhttps://t.co/网站权重PA:81,DA:94,SpamScore:N/Ahttps://bitly.com/网站权重PA:77,DA:92,SpamScore:3%https://tinyurl.com/app 网站权重PA:76,DA:94,SpamScore:1%https://cutt.ly/ 网站权重PA:68,DA:92,SpamScore:2%http://ow.ly/......
  • 增强版实名认证接口-Java身份证实名认证接口代码-身份认证
    数字化时代,信息安全如同金盾,而身份验证则是这面盾牌的核心环节。每一次登录的背后,都是您对隐私保护的渴望;每一次交易的信任,都源于对身份真实性的确认。现如今,随着网络平台的不断增多,实名认证接口的需求也在不断提升。以下是Java语言调用翔云身份实名认证API的代码:packagecom.te......
  • java导出txt文件 保存本地和浏览器直接下载两种方式
    第一种方式:保存到本地 packagecom.cnki.tool.base;importjavax.servlet.http.HttpServletResponse;importjava.io.*;importjava.util.ArrayList;importjava.util.List;publicclassExportTxtUtil{/***导出**@paramfile*......
  • Java——集合
    集合概念集合类存放的都是对象的引用,而不是对象本身。集合是一个动态的数组,数组的长度是不可变的,集合的长度是可变的。集合只能存储引用数据类型。集合类型主要有三种:set(集),list(列表),和map(映射)集合接口分为:Collection和Map,List,SetCollection接口collection中的元素是......
  • Java中线程的几种创建方式
    本文章将简单介绍有关java的四种线程创建方式一.继承Thread类//继承了Tread的类->MyTreadpublicclassMyThreadextendsThread{//线程启动后将要运行的代码@Overridepublicvoidrun(){System.out.println("通过继承Thread的方式来创建线程")......
  • java毕业设计基于微信小程序的新闻管理系统
    本系统(程序+源码)带文档lw万字以上  文末可领取本课题的JAVA源码参考系统程序文件列表系统的选题背景和意义选题背景:随着移动互联网技术的飞速发展,智能手机的普及率日益增高,人们获取信息的方式也发生了翻天覆地的变化。微信小程序作为一种新型的应用形态,因其无需下载安装......
  • Java基础 --- 综合练习
    Java基础---综合练习案例一卖飞机票需求:机票价格按照淡季旺季、头等舱和经济舱收费、输入机票原价、月份和头等舱或经济舱。按照如下规则计算机票价格:旺季(5-10月)头等舱9折,经济舱8.5折,淡季(11月到来年4月)头等舱7折,经济舱6.5折。importjava.util.Scanner;public......
  • 【Javascript】 Promise 对象(一)
    Promise的含义Promise是异步编程的一种解决方案,比传统的解决方案——回调函数和事件——更合理和更强大。它由社区最早提出和实现,ES6将其写进了语言标准,统一了用法,原生提供了Promise对象。所谓Promise,简单说就是一个容器,里面保存着某个未来才会结束的事件(通常是一个异步操......
  • JVM原理(GC,内存),JAVA底层
    1.JVM内存模型线程独占:栈,本地方法栈,程序计数器线程共享:堆,方法区2.什么是栈又称方法栈,线程私有的,线程执行方法是都会创建一个栈阵,用来存储局部变量表,操作栈,动态链接,方法出口等信息.调用方法时执行入栈,方法返回式执行出栈.3.什么是本地方法栈与栈类似,......
  • JAVA的多线程及并发
    1.Java中实现多线程有几种方法继承Thread类;实现Runnable接口;实现Callable接口通过FutureTask包装器来创建Thread线程;使用ExecutorService、Callable、Future实现有返回结果的多线程(也就是使用了ExecutorService来管理前面的三种方......