首页 > 编程语言 >Java-08常用容器

Java-08常用容器

时间:2024-02-05 15:57:56浏览次数:30  
标签:返回 容器 ---- Java 08 元素 util key java

List

  • 接口:java.util.List<>

  • 实现:

    • java.util.ArrayList<>:变长数组
    • java.util.LinkedList<>:双链表
  • 函数:

    • add():在末尾添加一个元素
    • clear():清空
    • size():返回长度
    • isEmpty():是否为空
    • get(i):获取第i个元素
    • set(i, val):将第i个元素设置为val

  • 类:java.util.Stack<>

  • 函数:

    • push():压入元素
    • pop():弹出栈顶元素,并返回栈顶元素
    • peek():返回栈顶元素
    • size():返回长度
    • empty():栈是否为空
    • clear():清空

队列

  • 接口:java.util.Queue<>

  • 实现:

    • java.util.LinkedList<>:双链表
    • java.util.PriorityQueue<>:优先队列
    • 默认是小根堆,大根堆写法:new PriorityQueue<>(Collections.reverseOrder())
  • 函数:

    • add():在队尾添加元素
    • remove():删除并返回队头
    • isEmpty():是否为空
    • size():返回长度
    • peek():返回队头
    • clear():清空

Set

  • 接口:java.util.Set<K>

  • 实现:

    • java.util.HashSet<K>:哈希表
    • java.util.TreeSet<K>:平衡树
  • 函数:

    • add():添加元素
    • contains():是否包含某个元素
    • remove():删除元素
    • size():返回元素数
    • isEmpty():是否为空
    • clear():清空
  • java.util.TreeSet多的函数:

    • ceiling(key):返回大于等于key的最小元素,不存在则返回null
    • floor(key):返回小于等于key的最大元素,不存在则返回null

Map

  • 接口:java.util.Map<K, V>

  • 实现:

    • java.util.HashMap<K, V>:哈希表
    • java.util.TreeMap<K, V>:平衡树
  • 函数:

    • put(key, value):添加关键字和其对应的值
    • get(key):返回关键字对应的值
    • containsKey(key):是否包含关键字
    • remove(key):删除关键字
    • size():返回元素数
    • isEmpty():是否为空
    • clear():清空
    • entrySet():获取Map中的所有对象的集合
    • Map.Entry<K, V>:Map中的对象类型
    • getKey():获取关键字
    • getValue():获取值
  • java.util.TreeMap<K, V>多的函数:

    • ceilingEntry(key):返回大于等于key的最小元素,不存在则返回null
    • floorEntry(key):返回小于等于key的最大元素,不存在则返回null

类似推断


List -----> list
Queue ----> queue
PriorityQueue ---> priority_queue
Stack ----> stack
TreeSet ----> set
HashSet ----> unordered_set
TreeMap ----> map
HashMap ----> unordered_map

标签:返回,容器,----,Java,08,元素,util,key,java
From: https://www.cnblogs.com/han-fei/p/18008286

相关文章

  • Java-09异常处理
    tip:[start]异常处理可以允许我们在程序运行时进行诊断和补救。——闫学灿tip:[end]Error与Exception的区别Error是程序无法处理的错误,比如OutOfMemoryError、ThreadDeath等。这些异常发生时,Java虚拟机(JVM)一般会选择线程终止。此类异常是程序的致命异常,是无法捕获处理的。......
  • 《视频篇》java实现下载hls(m3u8+ts)实时流并进行合并mp4
    链接:https://blog.csdn.net/qq_41604890/article/details/130143355首先需要了解什么是HLS简单理解就是,m3u8文件存放着可供客户端播放TS片段简单一点说m3u8加密技术就是将原视频分割成n个.ts文件,并用一个key文件对每一个.ts文件加密,其中m3u8文件里面存储了key文件和所有的.t......
  • Docker容器第三课:企业级应用部署-实战
    一、docker容器化部署企业级应用1.1使用容器化部署企业级应用必要性1.有利于快速实现企业级应用部署2.有利于实现企业级应用恢复1.2Docker参考资料官方网站 http://hub.docker.com/二、docker安装部署系统环境:CentOS72.1安装前准备工作查看内核版本是否大于3.10[jack@TEST~]#u......
  • 深入浅出Java多线程(十):CAS
    引言大家好,我是你们的老伙计秀才!今天带来的是[深入浅出Java多线程]系列的第十篇内容:CAS。大家觉得有用请点赞,喜欢请关注!秀才在此谢过大家了!!!在多线程编程中,对共享资源的安全访问和同步控制是至关重要的。传统的锁机制,如synchronized关键字和ReentrantLock等,能够有效防止多个线程同时......
  • 深入浅出Java多线程(八):volatile
    引言大家好,我是你们的老伙计秀才!今天带来的是[深入浅出Java多线程]系列的第八篇内容:volatile。大家觉得有用请点赞,喜欢请关注!秀才在此谢过大家了!!!在当今的软件开发领域,多线程编程已经成为提高系统性能和响应速度的重要手段。Java作为广泛应用的多线程支持语言,其内存模型(JMM)设计......
  • 一文搞清楚Java中的包、类、接口
    写在开头包、类、接口、方法、变量、参数、代码块,这些都是构成Java程序的核心部分,即便最简单的一段代码里都至少要包含里面的三四个内容,这两天花点时间梳理了一下,理解又深刻了几分。Java中的包Java定义了一种名字空间,称之为包:package。一个类总是属于某个包,类名(比如Person)只是......
  • 你知道哪些JavaScript语句?
    我们在上一节课中已经讲过了JavaScript语法的顶层设计,接下来我们进入到更具体的内容。JavaScript遵循了一般编程语言的“语句-表达式”结构,多数编程语言都是这样设计的。我们在上节课讲的脚本,或者模块都是由语句列表构成的,这一节课,我们就来一起了解一下语句。在JavaScript标......
  • 你知道哪些JavaScript语句?
    我们在上一节课中已经讲过了JavaScript语法的顶层设计,接下来我们进入到更具体的内容。JavaScript遵循了一般编程语言的“语句-表达式”结构,多数编程语言都是这样设计的。我们在上节课讲的脚本,或者模块都是由语句列表构成的,这一节课,我们就来一起了解一下语句。在JavaScript......
  • 【揭秘OAuth协议 — Java安全认证框架的核心基石】 从初识到精通,带你领略OAuth协议的
    背景介绍在现代的网站中,我们经常会遇到需要用户登录的情况。然而,直接要求用户注册可能会显得繁琐,导致用户的流失。为了解决这个问题,网站可以采用OAuth授权机制。通过与像GitHub或其他第三方网站的认证授权合作,网站可以获取用户的相关信息,避免了繁琐的注册过程。在从第三方网站授权......
  • Redis的Java客户端-Jedis
    Redis的Java客户端-Jedis在Redis官网中提供了各种语言的客户端,地址:https://redis.io/docs/clients/其中Java客户端也包含很多:标记为❤的就是推荐使用的java客户端,包括:Jedis和Lettuce:这两个主要是提供了Redis命令对应的API,方便我们操作Redis,而SpringDataRedis是对这两种做了......