首页 > 编程语言 >java中的容器

java中的容器

时间:2023-04-25 19:55:08浏览次数:36  
标签:容器 java System stk util add out

java中的容器

(1)List

接口:java.util.List<>

实现:

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

函数:

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

代码:

        List<Integer> list=new ArrayList<>();
        list.add(1);
        list.add(2);
        list.add(10);

        System.out.println(list.isEmpty());

(2)栈

类:java.util.Stack<>

函数:

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

代码:

Stack<Integer> stk=new Stack<>();
stk.push(1);
stk.push(2);
stk.push(10);
System.out.println(stk.pop());
System.out.println(stk.peek());

(3)队列

接口:java.util.Queue<>

实现:

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

函数:

  • add():在队尾添加元素

  • remove():删除并返回队头

  • isEmpty():是否为空

  • size():返回长度

  • peek():返回队头

  • clear():清空

    代码:

    Queue<Integer>  q=new LinkedList<>();//不能用ArrayList<>()
    
      q.add(1);
      q.add(2);
      q.add(10);
      System.out.println(q.remove());
      System.out.println(q.peek());
     Queue<Integer> q=new PriorityQueue<>();//小根堆,小的在前面
            q.add(2);
            q.add(1);
            q.add(10);
            q.remove();
            System.out.println(q.peek());
    

标签:容器,java,System,stk,util,add,out
From: https://www.cnblogs.com/bxzl/p/17353664.html

相关文章

  • JavaWeb回顾与小结(三)
    请求与响应概述架构BS架构:Browser/Server,浏览器/服务器架构模式.客户端只需要浏览器,应用程序的逻辑和数据都存储在服务端维护方便,体验一般CS架构:Client/Server,客户端/服务器架构模式开发,维护麻烦,体验不错请求(HttpServletRequest):获取请求数据响应(HttpServletRes......
  • 打卡3(Java)
    image.pnimportjava.util.Scanner;publicclassMain{publicstaticvoidmain(String[]args){Scannersc=newScanner(System.in);Stringa=sc.next(),b=sc.next(),c=sc.next();Stringres;if("vertebrado".equals(a......
  • Java中为什么重写equals()也需要重写hashCode()?
    所有类默认继承Object类先看一下Object源码packagejava.lang;publicclassObject{ //默认调用本地的hashcode()方法根据内存地址生成hash值避免不了哈希冲突 publicnativeinthashCode(); //默认调用的equals方法比较的是'=='比较 //基本类型比较的是两者的值是否......
  • Java+GeoTools实现WKT数据根据EPSG编码进行坐标系转换
    场景Java+GeoTools(开源的JavaGIS工具包)快速入门-实现读取shp文件并显示:https://blog.csdn.net/BADAO_LIUMANG_QIZHI/article/details/130367852在上面实现Java中集成Geotools之后,需求是将WKT数据转换成其他坐标系的WKT。比如说将EPSG:4524的坐标系转换成EPSG:2334的坐标系......
  • java获取当前程序路径
     publicstaticvoidmain(String[]args){{//获取当前程序路径的三种方法//1.SystemStringbaseDir=System.getProperty("user.dir");System.out.println(baseDir);//2.FileFile......
  • Java方法的返回值及注意事项
    方法的返回值为什么要有带返回值的方法呢?调用处拿到方法的结果之后,才能根据结果进行下一步操作带返回值方法的定义和调用:如果在调用处,要根据方法的结果去编写另一段代码逻辑为了在调用处拿到方法产生的结果,就需要定义带有返回值的方法1.带返回值方法定义的格式:public......
  • 基于java8构建Java项目
    需求:基于java:8-alpine镜像,将一个Java项目构建为镜像 实现思路如下:①新建一个空的目录(本例中为docker-demo-alpine)②拷贝docker-demo.jar到这个目录中,docker-demo.jar是一个简单JavaWeb项目打包成的jar文件。 ③编写Dockerfile文件在上面新建的目录中新建一个文件,命......
  • 开始java入坑之路
    Markdown学习标题:一级标题二级标题hello,word!hello,word!hello,word!hello,word! 引用zack 分割线图片 超链接ZACK列表abc a-空格bc 表格            代码​......
  • 批量删除docker过期停止的容器(全)
     过期的容器也是占用一部分的内存空间dockerps-a查看很多冗余过期的容器 这时候如果对应一个个删除容器id,有些麻烦,有没有方法对应将其批量删除呢答案:有的,本身命令行都是基于bash命令,可通过查询其容器,筛选其容器id,并将这部分容器进行删除即可关于docker的详细知识点可看我......
  • Java序列化和反序列化
    目录一、序列化和反序列化二、Java序列化演示三、反序列化漏洞一、序列化和反序列化1、含义​ 序列化就是内存中的对象写入到IO流中,保存的格式可以是二进制或者文本内容。反序列化就是IO流还原成对象。2、用途(1)传输网络对象(2)保存Session二、Java序列化演示1、序列化java......