1.数组是一块连续的内存空间,以下标(从0开始,最大下标为数组长度-1)来描述空间的位置.
2.数组的元素都是变量,变量的类型为定义数组时的类型.
3.数组创建后会对每个元素进行初化.int值为0,double值为0.0,引用类型为null.
4.数组创建后不可以改变.
格式: int[] a=new int[5];创建长度为5的空间,每一个数组的元素初始化都为0;a[1]=5;就是将第二个元素赋值为3
数组的优缺点(1)优点:
1.按照索引查询元素速度快.
2.能存储大量数据.
3.方便遍历数组(使用索引).
4.定义简单,访问方便.
5.可以根据索引随机访问其中的元素.
(2)缺点:
1.根据内容查找元素慢;
2.数组的大小一经确定不能改变,不适合动态储存;
3.数组只能存储一种数据类型;
4.增加,删除元素效率慢;
5.未封装任何方法,所有操作需要用户自己定义;
6.数组的空间必须是连续的,这就造成数组在内存中分配空间时必须找到一块连续的内存空间.所以数组不可能定义的太大,因为内存中不可能有那么多大的内存空间,从而解决这个问题的方法就是使用链表;
(3)数组与链表的区别:
1.在访问方式上:
数据可以随机访问其中的元素;
链表则需要顺序访问,不能随机访问.
2.空间使用上:
链表可以随意扩大;
数组则不能;
(4)链表:
链表的地址不是连续的,可以随意存放,删除等操作,通过引用来关联数据,链表可以分为单向的和双向的
1.优点:
链表和数组的差别就在于链表在对数据进行插入和删除的时候可以不用开辟新的空间,只需要找到需要操作的结点就可以了,大大提高了人我们的效率;
2.缺点:数组利于了查找,那链表就不利于查找咯
数组的使用场景数据比较少;经常做运算是按序号访问数据元素;数组更容易实现.任何高级语言都支持;构建的线性表稳定.
链表的应用场景:
对线性表的长度或者规模难以估计;频繁做插入删除操作;构建动态性比较强的的线性表.



