数组内容复习
- 定义格式:数据类型[] 变量名
int[] arr
数据类型 变量名[]int arr[]
数组是存放在连续内存空间上的相同类型数据的集合
- 数组的下标是从零开始的
- 数组的内存空间地址是连续的
- 数组的元素不可以删除,只能覆盖
-
动态初始化:数据类型[] 变量名 = new 数据类型[数组长度];
Int[] arr = new int[3];
new:为数组申请内存空间
静态初始化:初始化时指定每个数组元素的初始值,有系统决定组长度
格式:数据类型[] 变量名={数据1,数据2,数据3…}Int[] arr={1,2,3,,,}
数组初始化时,会为存储空间添加默认值0/0.00/null -
数组元素访问:
变量访问方式:数组名[索引]
索引的特征:从0开始;连续;每次加1
-
内存分配:内存地址 数据
栈内存:存储局部变量 局部变量:定义在方法中的变量arr,使用完就会消失
堆内存:存储new出来的内容(实体、对象)
-
常见问题:数组越界;空指针异常
-
数组常见操作:获取最值:①定义一个变量用于保存最值;②取数组中第一个数据作为变量的初始值;③与数组中剩余的数据逐个比对;④打印结果
704. 二分查找
给定一个
n
个元素有序的(升序)整型数组nums
和一个目标值target
,写一个函数搜索nums
中的target
,如果目标值存在返回下标,否则返回-1
。
输入: nums = [-1,0,3,5,9,12], target = 9
输出: 4
解释