一维数组、二维数组

(一)数组

变量: 只能存储一个值

数组: 存储的一组相同数据类型的值, 存储个数: 由程序员在创建的数组的时候来指定,

缺点: 固定长度

也称为: 容器

1.数组要素:

        1) 数组名

        2) 数据类型

        3) 元素

        4) 下标: 获取指定位置的元素: 从0开始: 0 表示第一个元素, 1表示第二个元素....

0=<下标<数组长度

        5) 数组的长度: 表示数组最大允许存多少个元素

2.使用数组: 一维数组

        1.声明数组: 没有开辟空间

语法:

数据类型[] 数组名;

数据类型 数组名[];

        2.开辟空间, 指定数组的长度 通过new关键字, 数组开辟空间是连续

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

注意:

 >   new 数组的方式: 除了开辟内存空间, 还会对数组中元素进行初始化(赋予初始值)
 >  初始值根据数据类型决定:

int/byte/short/long: 初始值0

double/float: 初始值:0.0

char: \u000

boolean: false

String/类类型: null

        3.往数组中存放元素: 通过下标

数组名[下标] = 值;

注意:

如果下标超出最大下标(数组的长度-1): 抛出一个数组越界的异常   ArrayIndexOutOfBoundsException: 5

如果一个数组没有开辟空间, 不能存放数据, 编程出错

        4.获取数组的元素,进行相关操作

通过下标: 数组名[下标]

如果下标超出最大下标(数组的长度-1): 抛出一个数组越界的异常

ArrayIndexOutOfBoundsException: 5

在实际开发中,可能使用循环遍历这个数组(把数组的元素一个一个拿出来), 最匹配:for

动态的获取数组的长度: 数组提供了一个属性:

  >  数组名.length  获取该数组的长度

可以把1,2,3(声明数组,开辟空间,存元素)合并成一行代码, 数组静态创建

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

注意: new后面中括号不能写长度, jdk根据后面值的个数确定数组的长度

简写: 数据类型[] 数组名 ={值1,值2,...}

        5.数组的数据类型: 可以基本数据类型, 也可以是类类型, 对象数组

实际使用数组中:

对数组中的元素进行添加,删除,修改,查询操作,通过下标获取元素

        6.java内存模型:

栈区: 方法执行时, 方法入栈, 存放的临时变量,当方法执行完成之后, 出栈,该方法往栈区存放临时变量空间都会回收

堆区:new 出来的东西都存在堆区, java提供的GC(垃圾回收器)机制 方法区:字节码文件(.class文件)加载时进入的内存

本地方法栈:调用操作系统相关资源

 

(二)二维数组

由多个一维数组组成, 称为二维数组

三维数组: 由多个二维数组组成

 

1.声明一个二维数组:

//1,声明数组
数据类型[][] 数组名;
//2.开辟空间
数组名 = new 数据类型[长度1][长度2]

长度1: 表示的一维数组的个数

长度2: 表示的一维数组的元素个数

//3.赋值  通过下标
数组名[i][j] = 值;
//4.使用: 通过下标
数组名[i][j]

遍历一维数组: 一个for循环

遍历二维数组: 两个for循环

2.二维数组的静态初始化

//一维数组的静态初始化
int[] arr = new int[]{1,2,3,4,5};
int[] arr2 = {1,2,3,4,5};
//二维数组:
int[][] arr3 = {{1,2,3},{4,5,6},{7,8,9}};

二维数组的一维数组长度: 数组名.length

二维数组的指定下标的一维数组元素个数: 数组名[下标].length

二维数组的元素个数: 数组名[0].length+数组名[1].length+...+数组名[数组名.length-1].length

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值