• 集合


    以下是相关集合的几个问题:

    List,Set继承Collection接口,Map不是

    List、Map、Set 三个接口,存取元素时,各有什么特点?
    List 以特定次序来持有元素,可有重复元素。
    Set 无法拥有重复元素,内部排序。
    Map 保存key-value 值,value 可多值。


    最常用的集合类是List 和Map。
    List 的具体实现包括ArrayList 和Vector,它们是可变大小的列表,比较适合构建、存储和操作任何类型对象的元素列表。List 适用于按数值索引访问元素的情形。

    Map 集合类用于存储元素对(称作“键”和“值”),其中每个键映射到一个值。


    ArrayList,Vector, LinkedList 的存储性能和特性:
    ArrayList 和Vector 都是使用数组方式存储数据,此数组元素数大于实际存储的数据以便增加和插入元素,它们都允许直接按序号索引元素,但是插入元素要涉及数组元素移动等内存操作,所以索引数据快而插入数据慢
    Vector 由于使用synchronized 方法(线程安全),通常性能上较ArrayList 差
    LinkedList 使用双向链表实现存储,按序号索引数据需要进行前向或后向遍历,但是插入数据时只需要记录本项的前后项即可,所以插入速度较快。

    Arraylist 与Vector 区别?
    答:就ArrayList 与Vector 主要从二方面来说:
    1)同步性:Vector 是线程安全的(同步),而ArrayList 是线程序不安全的;
    2)数据增长:当需要增长时,Vector 默认增长一倍,而ArrayList 却是一半。


    Collection 和Collections 的区别?
    Collection 是java.util 下的接口,它是各种集合的父接口,继承于它的接口主要有Set 和List;
    Collections 是个java.util 下的类,是针对集合的帮助类,提供一系列静态方法实现对各种集合的搜索、排序、线程安全化等操作。

  • 相关阅读:
    一款React版本的excel插件(reactjexcel)
    如何评价微软的微服务构建框架Dapr?
    【优雅代码】深入浅出 妙用Javascript中apply、call、bind
    国内外最顶级的12大看板工具
    基于键盘钩子实现扫码枪输入
    中国有哪些比较出名的C#大佬。?
    一个数据驱动的高效 dotnet PDF 开源工具库
    Web前端:2022年最佳Javascript动画库
    分布式数据库的高可用性简史
    Vue项目首屏打开速度的优化
  • 原文地址:https://www.cnblogs.com/jiuqing/p/4138673.html
Copyright © 2020-2023  润新知