1.java中的集合学习

2.Collection中常用方法

1.添加功能

boolean add(E e):添加一个元素

boolean addAll(Collection<? extends E> c):添加一个集合

2.删除功能

void clear():移除所有元素

boolean remove(Object o):移除一个指定元素

boolean removeAll(Collection<?> c):移除指定集合中的元素【只要有元素被移除,就返回true】

3.判断功能

boolean contains(Object o):判断集合中是否包含指定元素

boolean containsAll(Collection<?> c):判断集合中是否包含指定集合元素【只有全部包含,才返回true】

boolean isEmpty():判断集合是否为空

boolean equals(Object o)

4.获取功能

Iterator<E> iterator():【父类中继承的方法】

int hashCode():返回集合的哈希值

5.长度功能

int size():获取集合中元素的个数

6.交集功能

boolean retainAll(Collection<?> c):两个集合的交集【A对B做交集,结果保存在A中;只有A不变,才返回true】

7.把集合转换成数组

Object[] toArray():把集合转换成数组,可实现集合的遍历

<T> T[] toArray(T[] a):

3.List特有的方法

1.添加功能

void add(int index, E element):在指定位置添加元素

boolean addAll(int index, Collection<? extends E> c):在指定位置添加集合

2.获取功能

E get(int index):获取指定位置的元素【与size()结合可实现遍历】

List<E> subList(int fromIndex, int toIndex)

int indexOf(Object o)

int lastIndexOf(Object o)

3.列表迭代器

ListIterator<E> listIterator():List集合特有的迭代器

ListIterator<E> listIterator(int index)

4.删除功能

E remove(int index):根据索引删除元素,返回被删除的元素

5.修改功能

E set(int index, E element):根据索引修改元素,返回被修改的元素

4.Vector特有的功能

1.添加功能

public void addElement(E obj)

public void insertElementAt(E obj, int index)

2.获取功能

public E elementAt(int index)

public Enumeration<E> elements()

public int capacity():获取集合的容量

public int indexOf(Object o, int index)

public int lastIndexOf(Object o, int index)

public E firstElement():获取集合第一个元素

public E lastElement():获取集合最后一个元素

3.复制功能

public void copyInto(Object[] anArray)

4.修改功能

public void ensureCapacity(int minCapacity):增加集合的容量

public void setElementAt(E obj, int index)

public void trimToSize():使集合等于当前大小

public void setSize(int newSize):设置集合的大小

5.移除功能

public void removeAllElements():移除所有元素,并大小设置为零

public boolean removeElement(Object obj):移除第一个元素

public void removeElementAt(int index):移除指定元素

protected void removeRange(int fromIndex, int toIndex):移除指定范围元素【包括fromindex,不包括toIndex】

6.格式化功能

public String toString():返回集合的字符串形式【看源码,重写了】

LinkedList特有的方法:(可实现自定义栈)

public class LinkedList<E>extends AbstractSequentialList<E> implements List<E>, Deque<E>, Cloneable, Serializable

1.添加功能

public void addFirst(E e)

public void addLast(E e)

2.获取功能

3.public E getLast()

4public E getLast()

3.删除功能

public E removeFirst()

public E removeLast()

Java系列学习(十四)-集合的更多相关文章

  1. “全栈2019”Java第九十四章:局部内部类详解

    难度 初级 学习时间 10分钟 适合人群 零基础 开发语言 Java 开发环境 JDK v11 IntelliJ IDEA v2018.3 文章原文链接 "全栈2019"Java第 ...

  2. “全栈2019”Java第十四章:二进制、八进制、十六进制

    难度 初级 学习时间 10分钟 适合人群 零基础 开发语言 Java 开发环境 JDK v11 IntelliJ IDEA v2018.3 文章原文链接 "全栈2019"Java第 ...

  3. “全栈2019”Java第二十四章:流程控制语句中决策语句switch下篇

    难度 初级 学习时间 10分钟 适合人群 零基础 开发语言 Java 开发环境 JDK v11 IntelliJ IDEA v2018.3 文章原文链接 "全栈2019"Java第 ...

  4. Java从零开始学二十四(集合工具类Collections)

    一.Collections简介 在集合的应用开发中,集合的若干接口和若干个子类是最最常使用的,但是在JDK中提供了一种集合操作的工具类 —— Collections,可以直接通过此类方便的操作集合 二 ...

  5. Java笔记(二十四)……集合工具类Collections&Arrays

    Collections 集合框架的工具类,方法全部为静态 Collections与Collection的区别 Collection是集合框架的一个顶层接口,里面定义了单列集合的共性方法 Collect ...

  6. 学JAVA第二十四天,Set集合与StringBuilder

    下面的内容需要慢慢看,因为,我的语言表达能力不是很好 首先说Set把,Set集合是一个无序且不允许重复的集合,而且查找效率也是快的可怕的. 但是,有些时候,我们必须要用储存多个相同的值时,Set也是可 ...

  7. Java第十四天,集合、迭代器的使用

    集合 集合框架 一.Collection 1.定义方法: Collection<E> obj = new Collection子类<>(); 因为Collection是一个抽象 ...

  8. 菜鸟学Java(十四)——Java反射机制(一)

    说到反射,相信有过编程经验的人都不会陌生.反射机制让Java变得更加的灵活.反射机制在Java的众多特性中是非常重要的一个.下面就让我们一点一点了解它是怎么一回事. 什么是反射 在运行状态中,对于任意 ...

  9. Java Web(十四) 编写MyBookStore项目的总结

    这几天一直没有发博文,原因是在写一个书城的小项目,作为web学习的最后沉淀,接下来就要到框架的学习了. --WH 一.项目介绍 从网上找的一个培训机构的小项目,名称叫做 书城购物网站 吧,其中就是分前 ...

随机推荐

  1. PAT 1122 Hamiltonian Cycle

    The "Hamilton cycle problem" is to find a simple cycle that contains every vertex in a gra ...

  2. JS权威指南笔记1

    1.JavaScript数据类型可分为两种:原始类型和对象类型.原始类型下又包括数字.字符串和布尔值,以及null和undefined这两个特殊的:对象是属性的集合,且每个属性都有自己的"名 ...

  3. 日期工具类 DateTools

    为了跟其他日期工具类进行区分起名字DateTools public class DateTools { /** The DAT e_ forma t1. */ public static String ...

  4. rm -rf & node

    rm -rf & node rm -rf $ rm -rf mydir https://www.computerhope.com/issues/ch000798.htm https://sta ...

  5. codevs1127 接水问题

    题目描述 Description 学校里有一个水房,水房里一共装有m 个龙头可供同学们打开水,每个龙头每秒钟的供水量相等,均为1. 现在有n 名同学准备接水,他们的初始接水顺序已经确定.将这些同学按接 ...

  6. 23、Java并发性和多线程-重入锁死

    以下内容转自http://ifeve.com/reentrance-lockout/: 重入锁死与死锁和嵌套管程锁死非常相似.锁和读写锁两篇文章中都有涉及到重入锁死的问题. 当一个线程重新获取锁,读写 ...

  7. PHP array_merge()

    定义和用法 array_merge() 函数把两个或多个数组合并为一个数组. 如果键名有重复,该键的键值为最后一个键名对应的值(后面的覆盖前面的).如果数组是数字索引的,则键名会以连续方式重新索引. ...

  8. c++中的set_new_handler和new_handler

    当operator new申请一个内存失败的时候,它会进行如下的处理步骤:    1.如果存在客户指定的处理函数,则调用处理函数(new_handler),如果不存在则抛出一个异常. 2.继续申请内存 ...

  9. 46.Android 自己定义Dialog

    46.Android 自己定义Dialog Android 自己定义Dialog 前言 提示Dialog 提示Dialog 效果图 菜单Dialog 菜单Dialog 效果图 DialogActivi ...

  10. 国内APP漏洞扫描收费情况调查

    概述 上一次分享了应用加固的评测后,很多人想看看漏洞扫描相关的对比数据.其实在选择市面上这些移动安全类的产品时,经常为各种复杂的数据而感到疑惑,不知道怎么来评判各自的性能以及价格,从而选择出一款性价比 ...