数组概述
什么是数组?
数组在逻辑上是一种线性表数据结构, 数组在物理上是一种顺序的存储结构。
数组的定义: 数组(Array)是一种线性表数据结构,**它用一组连续的内存空间**,来存储一组具有**相同类型的数据**.
数组定义的关键词:
-
连续的内存空间 -
相同类型的数据
在此提一下何为线性表: 线性表: 数据排成像一条线一样的结构.每个线性表上的数据最多只有前和后两个方向. 非线性表: 数据之间并不是简单的前后关系. 线性表数据结构包括: 数组,链表,队列,栈. 非线性表数据结构包括: 二叉树,堆,图
数组基础
基本说明
- 数组在Java中是一种引用数据类型(不是基本数据类型),父类为Object。
- 数组相当于容器,可以存储的数据类型:基本数据类型、引用数据类型。
- 数组的存储位置在JVM(java虚拟机)内存划分中的堆内存中,用new来创建的内存空间,是一串连续的内存地址。每一个元素类型相同,因此占用内存空间大小一样。由于很难在内存空间上找到连续的特大空间,因此数组无法存储大量数据。
- 元素查询/检索方便,每个元素效率相同。随机删除/添加元素时效率较低。
数组初始化
- 静态初始化
int[] intArr = new int[]{1,2,3,4,5,9}; - 动态初始化
- arrayName = new type[length];
示例
int[] price = new int[4];