首页 > 编程语言 > 详细

java容器

时间:2020-09-08 15:12:27      阅读:61      评论:0      收藏:0      [点我收藏+]

java容器分为3类:Set、List、Map

其中Set和List两类容器实现了Collection接口

Set:因为set底层由Map实现,所以set里的元素也不可重复,说明存入Set的元素在内部储存空间内没有排序之分,其实现类为HashSet

List:list里的元素可以重复,元素在list内部储存空间有序,实现类有ArrayList,LinkedList,和Vector

  ArrayList,LinkedList,和Vector的区别:

    ArrayList底层由数据结构由数组实现,优点为查询快,但是添加、删除元素慢

    LinkedList底层由数据结构由连表实现,优点为添加、删除元素快,但是查询慢

    Vector底层也是有数组实现,但与ArrayList的区别在于Vector是线程安全的,而ArrayList不是

Map是单独的接口,其特点是存储的元素一般是以 键值对 的方式进行存储,通过操作 键 来存储、获得、修改 ;map中键不能重复,值可以重复。

  Dictionary接口定义了HashTable类,意义与操作同HashMap一样,不同点在于HashTable为线程安全的,而Hashmap为线程不安全。

  HashMap底层hashcode实现,每一个元素都会有特定的算法(如,除数留余法)生成一个hashcode,hash地址冲突使用了链地址法

  而TreeMap底层由红黑树实现,所以TreeMap的 键 会变得有序,,若需要一个有序的结果,就可以使用TreeMap

迭代器Iterator

在Set、Map中由于无序,不能通过for循环遍历,则可以通过Iterator对象来实现遍历

java容器

原文:https://www.cnblogs.com/twilightDF/p/13631744.html

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!