详谈java集合框架

 更新时间:2015年05月06日 17:46:51   投稿:mdxy-dxy  
这篇文章主要介绍了详谈java集合框架 ,需要的朋友可以参考下

1、为什么使用集合框架

当我们并不知道程序运行时会需要多少对象,或者需要更复杂方式存储对象——可以使用Java集合框架

2、Java集合框架包含的内容

接口:(父类)Collection接口下包含List(子类 )接口和Set(子类)
接口 List接口下又包含(ArrayList集合实现类和LinkedList集合实现类)
Set接口下又包含(HashSet集合实现类和TreeSet集合实现类)
接口:(父类)Map接口下包含(HashMap集合实现类和TreeMap 集合实现类)
*Collections接口提供了对集合进行排序、 遍历等多种算法实现 *Java集合框架为我们提供了一套性能优良、使用方便的接口和类,它们位于java.util包中

3、Collection 、List 和Set 的特性:

Collection 接口存储一组不唯一,无序的对象
List 接口存储一组不唯一,有序(插入顺序)的对象
Set 接口存储一组唯一,无序的对象 Map接口存储一组键值对象,提供key到value的映射

4、ArrayList集合和LinkedList集合的优点

1、ArrayList实现了长度可变的数组,在内存中分配连续的空间。遍历元素和随机访问元素的效率比较高
2、LinkedList采用链表存储方式。插入、删除元素时效率比较高

List接口提供相应方法remove()、contains(),直接使用即可

List接口常用方法 :  

    boolean add(Object o)         在列表的末尾顺序添加元素,起始索引位置从0开始
   void add(int index,Object o) 在指定的索引位置添加元素。索引位置必须介于0和列表中元素个数之间
   int size()                 返回列表中的元素个数
   Object get(int index)         返回指定索引位置处的元素。取出的元素是Object类型,使用前需要进行强制类型转换
   boolean contains(Object o) 判断列表中是否存在指定元素
   boolean remove(Object o) 从列表中删除元素
    Object remove(int index) 从列表中删除指定位置元素,起始索引位置从0开始
    LinkedList的特殊方法
    void addFirst(Object o) 在列表的首部添加元素
    void addLast(Object o) 在列表的末尾添加元素
    Object getFirst()         返回列表中的第一个元素
    Object getLast()         返回列表中的最后一个元素
    Object removeFirst()         删除并返回列表中的第一个元素
    Object removeLast()         删除并返回列表中的最后一个元素

Map接口常用方法:

Object put(Object key, Object val) 以“键-值对”的方式进行存储
Object get (Object key) 根据键返回相关联的值,如果不存在指定的键,返回null
Object remove (Object key) 删除由指定的键映射的“键-值对”
int size() 返回元素个数
Set keySet () 返回键的集合
Collection values () 返回值的集合
boolean containsKey (Object key) 如果存在由指定的键映射的“键-值对”,返回true

相关文章

  • Eclipse中使用Maven创建Java Web工程的实现方式

    Eclipse中使用Maven创建Java Web工程的实现方式

    这篇文章主要介绍了Eclipse中使用Maven创建Java Web工程的实现方式的相关资料,希望通过本文能帮助到大家,让大家实现这样的方式,需要的朋友可以参考下
    2017-10-10
  • Java8新特性Stream流详解

    Java8新特性Stream流详解

    Java8 Stream使用的是函数式编程模式,如同它的名字一样,它可以被用来对集合进行链状流式的操作,本文就将带着你如何使用 Java 8 不同类型的 Stream 操作,同时还将了解流的处理顺序,以及不同顺序的流操作是如何影响运行时性能的
    2023-07-07
  • Spring Cloud Eureka高可用配置(踩坑记录)

    Spring Cloud Eureka高可用配置(踩坑记录)

    在进行Eureka高可用配置时,控制台一直出现“......”的错误,但是在浏览器中输入地址:peer1:8761 却是可正常运行,这篇文章主要介绍了Spring Cloud踩坑之Eureka高可用配置,需要的朋友可以参考下
    2023-08-08
  • spring boot容器启动流程

    spring boot容器启动流程

    spring cloud是基于spring boot快速搭建的,今天咱们就看看spring boot容器启动流程,需要的朋友跟随脚本之家小编一起学习吧
    2018-01-01
  • java 对象的序列化和反序列化详细介绍

    java 对象的序列化和反序列化详细介绍

    这篇文章主要介绍了java 对象的序列化和反序列化的相关资料,需要的朋友可以参考下
    2016-10-10
  • 总结Java调用Python程序方法

    总结Java调用Python程序方法

    这篇文章主要介绍了总结Java调用Python程序方法,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
    2020-08-08
  • Spring 面向切面编程AOP实现详解

    Spring 面向切面编程AOP实现详解

    这篇文章主要介绍了Spring 面向切面编程AOP实现详解,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友可以参考下
    2019-09-09
  • Java绘图库JFreeChart的使用教程

    Java绘图库JFreeChart的使用教程

    图表是一种以简单方式显示信息的图形,JFreeChart允许创建各种交互式和非交互式图表,本文主要介绍了Java绘图库JFreeChart的使用教程,感兴趣的可以了解一下
    2023-09-09
  • 为什么Spring官方推荐的@Transational还能导致生产事故

    为什么Spring官方推荐的@Transational还能导致生产事故

    在Spring中进行事务管理非常简单,只需要在方法上加上注解@Transactional,那么为什么Spring官方推荐的@Transational还能导致生产事故,本文就详细的介绍一下
    2021-11-11
  • 一篇文章带你入门java算术运算符(加减乘除余,字符连接)

    一篇文章带你入门java算术运算符(加减乘除余,字符连接)

    这篇文章主要介绍了Java基本数据类型和运算符,结合实例形式详细分析了java基本数据类型、数据类型转换、算术运算符、逻辑运算符等相关原理与操作技巧,需要的朋友可以参考下
    2021-08-08

最新评论