JAVA-关于集合的一些问题

1.Collection、Set和List的区别? 
    Collection对象之间没有指定的顺序,允许有重复元素和多个null元素对象;它是Set和List接口的父类,是一种最通用型的集合接口; 
    Set各个元素对象之间没有指定的顺序,不允许有重复元素,最多允许有一个null元素对象; 

    List各个元素对象之间有指定的顺序,允许重复元素和多个null元素对象; 

2.LinkedList,ArrayList,Vector,Stack,Queue区别?NodeList区别?

    1)LinkedList链式访问,以指针相连,适合于在链表中间需要频繁进行插入和删除操作。

    2)ArrayList类似数组的形式,按照序号存储,随机访问速度非常快。

    3)Vector向量按照各元素序号存储,数组大小可以动态增长,对于大容量数据存储效率较高。

    4)Stack堆栈,先进后出的数组。

    这些类的对比与选择:

    如果涉及到堆栈队列等操作,应该考虑List中的stack,queue

    对于需要快速插入删除元素,应该使用linkedlist

    如果需要快速随机访问元素,应该选用arraylist

    如果程序在单线程环境中,选用非同步类

    如果在多线程中,选用同步类vector、stack和hashtable以及其子类。

几个面试常见问题:

ArrayList和Vector有什么区别?HashMap和HashTable有什么区别?

  Vector和HashTable是线程同步的(synchronized)。性能上,ArrayList和HashMap分别比Vector和Hashtable要好。

讲解java集合的体系结构

   A:ListSetMap是这个集合体系中最主要的三个接口。

      其中ListSet继承自Collection接口。

      Set不允许元素重复。HashSetTreeSet是两个主要的实现类。

      List有序且允许元素重复。ArrayListLinkedListVector是三个主要的实现类。

      Map也属于集合系统,但和Collection接口不同。Mapkeyvalue的映射集合,其中key列就是一个集合。key不能重复,但是value可以重复。HashMapTreeMapHashtable是三个主要的实现类。

      SortedSetSortedMap接口对元素按指定规则排序,SortedMap是对key列进行排序

  • 1
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值