首页 > 代码库 > java基础2

java基础2

一、集合类汇总

1.数组与集合

数组:既可存储基本数据类型,也可以存储同类对象。长度固定。

集合:只能存储对象类别可以不同。长度不固定。

 

Collection是集合类的根接口,其被继承产生了两个接口,SetList

Set中不能包含重复的元素。List是一个有序的集合,可以包含重复的元素,提供了按索引访问的方式。

Map是Java.util包中的另一个接口,它和Collection接口没有关系,是相互独立的,但是都属于集合类的一部分。Map包含了key-value对Map不能包含重复的key,但是可以包含相同的value。

Iterator,所有的集合类,都实现了Iterator接口,这是一个用于遍历集合中元素的接口,主要包含以下三种方法:
1.hasNext()是否还有下一个元素。
2.next()返回下一个元素。
3.remove()删除当前元素。

 

arraylist和linkedlist

1.ArrayList是实现了基于动态数组的数据结构,LinkedList基于链表的数据结构。

ArrayList重要数据结构(数组):

1.1. // 保存ArrayList中数据的数组  private transient Object[] elementData;

1.2. // ArrayList中实际数据的数量  private int size;

LinkList重要数据结构(双向循环链表):

private transient Entry<E> header = new Entry<E>(null, null, null);    //链表节点

private transient int size = 0;  //节点数量


2.对于随机访问get和set,ArrayList优于LinkedList,因为LinkList要移动指针。
3.对于新增和删除操作add和remove,LinkList比较占优势,因为ArrayList要移动数据。

 

java基础2