学习积累----二维数组的理解与基本使用

1.二维数组的理解

- 对于二维数组的理解,可以看成是一堆一维数组array1又作为另一个一维数组array2的元素而存在。
- 其实,从数组底层的运行机制来看,其实没有多维数组。
- 概念:数组的外层元素 ;数组的内层元素


2.二维数组的使用(6个基本点)
>数组的声明和初始化
>调用数组的指定元素
>数组的属性:length,表示数组的长度
>数组的遍历
>数组元素的默认初始化值
>二维数组的内存解析(难)

3.二维数组元素的默认初始化值
3.1 动态初始化方式1:(比如: int[][] arr = new int [3][4])

1)外层元素,默认存储地址值
2)内层元素,默认与一维数组元素的不同默认值规定相同


3.2 静态初始化方式2: (比如; int[][] arr = new int [3][])

1)外层元素,默认存储null
2)内层元素,不存在。如果调用会报错(NullPointerException),空指针异常
4.【数组的常见算法】

1.数值型数组特征值统计
这里的特征值涉及到: 平均值、最大值、最小值、总和等

2.数组元素的赋值(实际开发中,遇到的场景比较多)

3.数组的复制

4.数组的反转

5.数组的扩容与缩容

6.数组元素的查找
顺序查找:
  >优点:算法简单;
  >缺点:效率低。执行时间复杂度O(N)

二分法查找:
  >优点:效率高。执行时间复杂度O(log2N)
  >缺点:算法相较于顺序查找难一点;前提:数组必须有序

7.数组的排序

排序算法的衡量标准:时间复杂度(最重要) 空间复杂度 稳定性

排序的分类:内部排序:外部排序(外部存储设备+内存)

内部排序的具体算法:10种

我们需要关注的几个排序算法:
> 冒泡排序:最简单,需要大家会手写。时间复杂度:O(n^2)
> 快速排序:最快的,开发中默认选择的排序方式;掌握快速排序的实现思路:时间复杂度O(nlogn)
8.数组中常见异常小结

> 数组角标越界的异常:ArrayIndexOutOfBoundsException
> 空指针异常:NullPointerException

2.出现异常会怎样?如何处理?
> 一旦程序执行中出现了异常,程序就会终止执行。
> 针对异常提供的信息,修改对应的代码,避免异常再次出现。
  • 17
    点赞
  • 8
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值