第一节课

  1. 返回值 方法名 作用
    void add(index,elemnet) 在指定的索引处添加元素
    object get(index) 返回指定索引处的元素
    int indexOf(object) 元素第一次出现的位置
    int lastindexof(object) 元素最后一次出现的位置
    object set(index,object) 替换指定索引处的为指定对象
    boolean addAll(index,collection) 添加指定的集合到当前集合的指定索引处
    object remove(int) 删除当前集合中指定索引index处的元素,并返回被删除的元素
    List sublist(int fromindex,int toindex) 返回当前集合中指定索引fromindex到toindex处的所有元素组成的子集合
  2. ArrayList札记

    1. 数据结构是数组

    2. 特点:

      1. 增删慢,查询快;
      2. 其底层数组默认容量为10,新元素增加自动增加
  3. LinkedList概述

    1. 底层数据存储结构式链表结构

    2. 增删快,查询慢,另外还实现了Deque接口,因此可以被当做双端对列和栈使用

    3. 设计了很多的首尾操作的方法(e 为泛型的通配符)

    4. 特有方法合集:      

返回值 方法名 作用
void addFirst(e e) 将指定元素e插入当前集合的开头
void addLast(e e) 将指定元素e插入当前集合的末尾
E getFirst() 获取当前集合中的第一个元素
E getLast() 获取当前集合中的最后一个元素
e removeFirst() 删除当前集合中的第一个元素
e removeLast() 删除当前集合中最后一个元素
  1. ListIterator

  2. 提供了listIterator()方法,获取listIterator对象,专门用来迭代list集合,ListIterator接口继承于Iterator接口

返回值 方法名 作用
boolean hasprevious() 判断是否有下一个元素
object previous() 获取迭代的上一个元素
void add() 在指定位置添加元素
  1. Vector向量

    1. list接口的实现类,底层基于数组,默认容量10,每次增加一倍,是一个线程安全的集合

    2. Vector<String> vc=new Vector<String>();
      // create one vector collection;
      vc.capacity();
      // get vector collection capacity;
  2. Stack(栈)

    1. list集合的实现类,继承了vector,遵循先进后出的原则

    2. 名词解释:

      1. 栈顶元素:最后入栈的元素
      2. 栈底元素:最先入栈的元素
      3. 入栈/压栈:将元素放入栈中
      4. 出栈/弹栈:将元素从栈中取出
    3. Stack<String> s=new Stack<String>();
      // create onr stack collection
      s.push("xxxx");
      // 压栈
    4. 返回值 方法名 作用
      E push(E item) 将指定的元素item压入当前栈中
      E(synchronized) peek() 获取栈顶元素,不删除
      E(synchronized) pop() 出栈,并删除栈顶元素
      int(synchronized) search() 获取时从栈顶到栈底的顺序开始查找,以1为基数,若没有返回-1;
  3. Queue队列

    1. collection接口下的子接口,底层是队列的数据结构存储,遵循先进先出,后进后出的原则,最先放进去的元素叫队头元素,最后放进去的元素叫队尾元素

    2. Queue q = new ConcurrentLinkedQueue();
      // 创建队列对象
      q.offer("xxxxx");
      // 插入队列元素
    3. 常用方法

      返回值 方法名 作用
      boolean offer(E e) 插入元素,成功true,失败false
      E peek() 获取队头的元素,成功则输出,反之为null
      E element() 获取队头的元素,失败则抛出NosuchElementException(没有元素异常)
      E poll() 出队移除队头元素,失败返回null
      E remove() 移除队头元素,失败则抛出异常

Java学习笔记十二--集合(三)的更多相关文章

  1. Java学习笔记十二:Java中方法的重载

    Java中方法的重载 什么是方法的重载呢? 如果同一个类中包含了两个或两个以上方法名相同.方法参数的个数.顺序或类型不同的方法,则称为方法的重载,也可称该方法被重载了.如下所示 4 个方法名称都为 s ...

  2. Java学习笔记(十二)面向对象---内部类

    内部类的访问规则 内部类可以直接访问外部类中的成员,包括私有成员. 因为内部类中持有了一个外部类的引用,格式为:外部类名.this 外部类要访问内部类,必须要建立内部对象. class Outer { ...

  3. 【Java学习笔记之二十六】深入理解Java匿名内部类

    在[Java学习笔记之二十五]初步认知Java内部类中对匿名内部类做了一个简单的介绍,但是内部类还存在很多其他细节问题,所以就衍生出这篇博客.在这篇博客中你可以了解到匿名内部类的使用.匿名内部类要注意 ...

  4. python3.4学习笔记(十二) python正则表达式的使用,使用pyspider匹配输出带.html结尾的URL

    python3.4学习笔记(十二) python正则表达式的使用,使用pyspider匹配输出带.html结尾的URL实战例子:使用pyspider匹配输出带.html结尾的URL:@config(a ...

  5. Go语言学习笔记十二: 范围(Range)

    Go语言学习笔记十二: 范围(Range) rang这个关键字主要用来遍历数组,切片,通道或Map.在数组和切片中返回索引值,在Map中返回key. 这个特别像python的方式.不过写法上比较怪异使 ...

  6. java jvm学习笔记十二(访问控制器的栈校验机制)

    欢迎装载请说明出处:http://blog.csdn.net/yfqnihao 本节源码:http://download.csdn.net/detail/yfqnihao/4863854 这一节,我们 ...

  7. java se系列(十二)集合

    1.集合 1.1.什么是集合 存储对象的容器,面向对象语言对事物的体现,都是以对象的形式来体现的,所以为了方便对多个对象的操作,存储对象,集合是存储对象最常用的一种方式.集合的出现就是为了持有对象.集 ...

  8. Java学习笔记(二)——Java操作properties文件

    [前面的话] 前段时间在学习和玩java web相关的东西,对于这些技术,一边学习,一边做东西,一边总结,希望可以一边成长和有所收获.有时总是思考太多反而成为了前进的阻力,所以对于生活还是简单一些,不 ...

  9. 201671010140. 2016-2017-2 《Java程序设计》java学习第十二周

    java学习第十章:图形程序设计       本章,介绍的是如何编写使用图形用户界面GUI的java程序.主要讲的是如何编写定义屏幕上的窗口大小和位置的程序,如何在窗口中采用多种字体显示文本,如何显示 ...

随机推荐

  1. Moonraker 靶机渗透

    0x01 简介 攻击Moonraker系统并且找出存在最大的威胁漏洞,通过最大威胁漏洞攻击目标靶机系统并进行提权获取系统中root目录下的flag信息. Moonraker: 1镜像下载地址: htt ...

  2. Centos7 安装Nginx 实战01

    1.首先下载 Nginx wget http://nginx.org/download/nginx-1.17.0.tar.gz (版本什么的自己去官网找好) 2.解压 tar -zxvf nginx- ...

  3. jenkins离线安装插件的方法(无法访问外网)

    最近项目要迁移环境,无法访问外网,因此jenkins的安装配置需要离线操作,在此记录 jenkins下载安装好之后,跳过插件的安装,新建用户进入jenkins界面,这些前置步骤我在之前的随笔里有写具体 ...

  4. scrapy和scrapy-redis的区别

    scrapy是一个python爬虫框架,爬取的效率极高,具有高度的定制性,但是不支持分布式.而scrapy-redis是一套基于redis库,运行在scrapy框架之上的组件,可以让scapy支持分布 ...

  5. Splitting into digits CodeForce#1104A

    题目链接:Splitting into digits 题目原文 Vasya has his favourite number 

  6. 记一次java-selenium自动抢红包最简单案例1

    案例网址:http://xinyue.qq.com/act/pc/xyjf/a20170907envelopes/index.htm?ADTAG=AD_gw.home.pt.2_dyghb.20170 ...

  7. 小型APP系统开发与应用项目实训

    实训项目 :             小型APP系统开发与应用项目实训                           项目成品名称:          果乐多商城               项 ...

  8. 配置文件my.cnf---配置信息注释大全

    在进行MySQL与CM+CHD之间的应用配置时,发现此前对于MySQL的配置含义过于模糊,所以将CM+CHD集群所涉及MySQL方面的配置含义进行抽取并加以注释,方便此后的配置和使用. 一.客户端设置 ...

  9. 前端获取后台传输过来是数据 {张三:12} 解析为[object object],获取其中内容

    昨天遇到前端传输过来的数据为[{张三:12},{李四:23}],后台用的是map格式,我在前端js中暂未找到直接调用对象内容的方法,故利用以下方法来获取: $.each(data.data,funct ...

  10. gitbook 入门教程之从零到壹发布自己的插件

    什么是插件 Gitbook 插件是扩展 Gitbook 功能的最佳方式,如果 Gitbook 没有想要的功能或者说网络上也没有现成的解决方案时,那么只剩下自食其力这条道路,让我们一起来自力更生开发插件 ...