1.介绍collection框架【基础】
1.数据结构)【基础】
Collection:
├List
│├LinkedList
│├ArrayList
│└Vector
│ └Stack
└Set
Map
├Hashtable
├HashMap
└WeakHashMap
Collection 是最基本的集合接口,一个Collection 代表一组Object,即Collection 的元素(Elements); Map 提供key 到value 的映射。
2.List,Set,Map 是否继承自Collection 接口?【基础】
答:List,Set 是;Map 不是。
3.你所知道的集合类都有哪些?主要方法?【基础】
答:最常用的集合类是List 和Map。List 的具体实现ArrayList 和Vector,它们是可变大小的列表,比较适合构建、
4.说出ArrayList,Vector, LinkedList 的存储性能和特性?【基础】
ArrayList 和Vector 使用数组方式存储数据,Vector(线程安全) 由于使用了synchronized 方法
LinkedList 使用双向链表实现存,插入删除速度快。
5.Collection 和Collections 的区别?【基础】
Collection 是集合list set父接口
Collections 集合的一个帮助类,提供一系列静态方法实现对各种集合的搜索、排序、线程安全化等操作。
6.HashMap 和Hashtable 的区别? 【基础】
1)HashMap 没有排序,允许一个null 键和多个null 值, 而Hashtable 不允许;Hashtable(线程安全)
7.Arraylist 与Vector 区别?【基础】
Vector 是线程安全的(同步),而ArrayList 是线程序不安全
8.List、Map、Set 三个接口,存取元素时,各有什么特点?【基础】
List ,可有重复元素。Set 无法拥有重复元素,Map 保存key-value 值,value 可多值。
9.Set 里的元素是不能重复的,那么用什么方法来区分重复与否呢? 是用==还是equals()? 它们有何区别? 【基础】
答:Set 里的元素是不能重复的,用equals ()方法来区分重复与否。覆盖equals()方法用来判断对象的内容是否相同,而”==”判断地址是否相等,用来决定引用值是否指向同一对象。
10.用程序给出随便大小的10 个数,序号为1-10,按从小到大顺序输出,并输出相应的序号。【基础】
public class RandomSort {public static void printRandomBySort() {Random random = new Random(); // 创建随机数生成器List list = new ArrayList();// 生成10 个随机数,并放在集合list 中for (int i = 0; i < 10; i++) {list.add(random.nextInt(1000));}Collections.sort(list); // 对集合中的元素进行排序Iterator it = list.iterator();int count = 0;while (it.hasNext()) { // 顺序输出排序后集合中的元素System.out.println(++count + ": " + it.next());