java面试题集锦(不断更新中)

Collection 和 Collections的区别。

  • Collections是个Java.util下的类,他提供一系列静态方法实现对各种集合的搜索、排序、线程安全化等操作。
  • Collection是个java.util下的接口,它是各种集合结构的父接口。

ArrayList和Vector的区别。

  • 同步性:Vector是线程安全的,也就是说是同步的,而ArrayList是线程序不安全的,不是同步的
  • 数据增长:当需要增长时,Vector默认增长为原来一培,而ArrayList却是原来的一半

HashMap和Hashtable的区别

  • 历史原因:Hashtable是基于陈旧的Dictionary类的,HashMap是Java 1.2引进的Map接口的一个实现
  • 同步性:Hashtable是线程安全的,也就是说是同步的,而HashMap是线程序不安全的,不是同步的
  • 值:只有HashMap可以让你将空值作为一个表的条目的key或value

ArrayList Vector LinkedList 区别与用法

  • 存储方式:ArrayList 和Vector是采用数组方式存储数据,此数组元素数大于实际存储的数据以便增加和插入元素,LinkedList使用双向链表实现存储,
  • 检索方式插入方式:ArrayList 和Vector都允许直接序号索引元素,但是插入数据要设计到数组元素移动等内存操作,所以索引数据快插入数据慢,Vector由于使用了synchronized方法(线程安全)所以性能上比ArrayList要差,LinkedList按序号索引数据需要进行向前或向后遍历,但是插入数据时只需要记录本项的前后项即可,所以插入数度较快!
  • 同步性:arraylist,linkedlist是非同步的,是线程不安全的,vector是同步的,线程安全的
上一篇:IE,firefox下使用CSS属性overflow的存在的不同


下一篇:javascript中方法的链式调用(jQuery中的重要特性)