JAVA——————数组

一、数组概述

  1. 数组:数组是在内存中开辟的一块连续的内存空间,用于存储相同数据类型的一种数据结构
  2. 数组会对存入其中的元素进行自动的编号,这些编号是从0开始的,称之为元素的下标
  3. 数组中存储的数据称之为元素,我们存储数据称之为添加元素,数组的大小也叫数组的长度

二、数组的特点

  1. 数组属于引用数据类型,数组的元素可以是基本数据类型,也可以是引用数据类型
  2. 创建数组的时候,会开辟一块连续的内存空间
  3. 数组的长度一旦确定,就不能被修改
  4. 数组是有序排列的
  5. 数组长度的获取: 数组名.length;  如:array.length;

三、定义数组

  1. 静态初始化定义数组(两种方式)
    1. 方式一

格式

示例

说明

数据类型[]  数组名 = new 数据类型[]{元素1,元素2,元素3}

int[] arr = new int[]{3,5,9}

定义一个整数类型的数组arr, 数组中存储元素都是int类型3,5,9,该数组长度为3

注意:  int[]arr = new int[3]{3,5,9}  这种写法是错误的,因为大括号中存入的元素和中括号中指定的长度可能不一致

  1. 方式二

方式二就是方式一的简写形式

格式

示例

说明

数据类型[]  数组名 ={元素1,元素2,元素3}

int[] arr ={3,5,9}

定义一个整数类型的数组arr, 数组中存储元素都是int类型3,5,9,该数组长度为3

  1. 动态初始化定义数组(一种方式)

格式

示例

说明

数据类型[]  数组名 =new 数据类型[数据长度]

int[] arr =new int[5];

定义一个整数类型的数组arr,数组长度为5,每一个元素都默认是int类型,值默认为0

四、内存存储

  1. 在Java中,把内存进行了划分,划分为不同的区间(栈内存,堆内存,方法区,本地方法栈,PC计数器),今天我们重点关注的是栈内存和堆内存
    1. 栈内存:栈内存用于存储变量,变量在使用的时候是存储在栈内存中的,使用完成之后,从栈内存中移除
    2. 堆内存: 堆内存是用来存储对象的,而数组是对象的一种,当数组存入堆内存中的时候,堆内存会自动的对数组中的每一个位置赋一个默认值

如果数组元素是引用数据类型,默认值是null,    如果数组元素是byte short  int  类型那么默认值:0  ,char类型的数组默认值是'\u0000'  (空格)   ,boolean类型的数组默认值是false

  1. 数组内存结构

五、数组的访问

  1. 访问格式: 数组名[下标]    如:arr[0]
  2. 数组的长度:数组名.length   如:arr.length;  
  3. 数组最后一个元素的下标: 数组长度-1]     比如: arr最有一个元素 :arr[arr.length-1]
  4. 当访问数组的时候,下标超出指定长度   数组名.length-1  就会发生数组下标越界     ArrayIndexOutOfBoundsException

六、数组的遍历

  1. 遍历:从头到尾获取数组的每一个元素
  2. 传统的方式遍历

int[] arr = {12,5,98,6,36,24,25};

//传统方式遍历

System.out.println(arr[0]);

System.out.println(arr[1]);

System.out.println(arr[2]);

System.out.println(arr[3]);

System.out.println(arr[4]);

System.out.println(arr[5]);

System.out.println(arr[6]);

  1. for循环遍历

int[] arr = {12,5,98,6,36,24,25};

//for循环遍历,如果需要元素的下标只能用for循环

for(int i=0;i<arr.length;i++){

System.out.println(arr[i]);

}

  1. 增强for循环遍历

int[] arr = {12,5,98,6,36,24,25};

//增强for循环遍历,如果不需要元素的下标可以使用增强for循环

for(int i:arr){

System.out.println(i);

}

  • 22
    点赞
  • 10
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值