array和list的区别

异:1.array数组:是基于索引的数据结构

list是一个有序的集合,提供了按索引访问的方式

2.array是一段连续的存储结构

list是不连续的存储结构

3.list和array对元素的索引方式是不同的

**array首元素的地址是数组的地址,然后第几个元素,加上几个地址偏移,就是该元素的地址。

**list的每个节点有一个next属性,这个属性记录他的下一个节点的地址。所以链表需要从第一个元素,逐个next到指定元素,耗时。

!大量的查找操作用array

!频繁插入和删除用list

!由于list需要存下一个节点的地址,所以list比array相对浪费了空间。

4.数组必须在初始化时分配固定的大小,不能动态改变

list空间不连续,不用指定固定大小。

!无法确定数组大小时用List代替array

5.一个数组只能存放同一种数据类型。

list可以装多种不同的数据类型

List list = new ArrayList();

同:1.array和list都属于顺序表。

3.基于效率和类型检验,应尽可能使用Array

《2》Java流程控制(三大结构)。

顺序结构:代码执行的顺序,从上往下,从左往右

选择结构:if_else,switch_case_break

循环结构:for,while,do...while