Java集合的区别

目    录

介绍

Collection容器(接口)

AbstractList(抽象类,实现List接口)— 列表

ArrayList(直接实现类)

LinkedList(间接实现类)

Vector(直接实现类)

AbstractSet(抽象类,实现Set接口)— 集合

HashSet(直接实现类)

TreeSet(直接实现类)

LinkedHashSet(间接实现类)

Map映射(接口)

AbstractMap(抽象类,实现Map接口)— 键值对(key,value)

HashMap(直接实现类)

TreeMap(直接实现类)

WeakHashMap(直接实现类)

LinkedHashMap(间接实现类)

它们的区别

1、容器类与数组的区别

2、注意点

3 、Map 中元素,可以将 key 序列、 value 序列单独抽取出来。


©本文由博主原创,未经允许,不得转载相关博文内容


  • 介绍

    掌握Java的几种集合类区别,这是学习Java的基础,也是Java开发者的必备技能了。在很多企业的面试中,可能会面试关于这个类型的问题,比如Java几种集合的区别。那么,本篇文章将带你理解Java各个集合的主要区别。

  • Collection容器(接口)

  • AbstractList(抽象类,实现List接口)— 列表

    List(列表)的特点是:元素是有序的、允许有任意个重复元素,包括空元素。

  • ArrayList(直接实现类)

    ArrayList:线程不同步的数组列表。它以数组的方式实现了一个列表,它的设计导致它拥有迅速的遍历元素的手段。在同样庞大的数据量面前,它的遍历元素的速度是LinkedList无法比较的。既然遍历元素的区别这么庞大,那么为了让大家眼见为实,我特意写了这么一个例子,用这两个集合去遍历同样是10万条字符串的数据。下面看看它的区别吧!(官方原文说明:这个类相当于Vector类,只是线程是不同步的)

    ArrayList,遍历100万条字符串数据耗时记录(ArrayList遍历元素所用的时间:平均数:2651.4ms / 单位ms)

    LinkedList,遍历10万条字符串数据耗时记录(LinkedList遍历元素所用的时间:平均:19070.3ms / 单位ms),我测试过在遍历100万条时,已经出现内存溢出的现象,界面无响应。

  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值