1. 递归
递归包括两个部分:
-
递归头:什么时候不调用自身方法(递归出口)
-
递归体:什么时候调用自身方法
2. 数组
2.1数组定义:
-
数组是相同类型数据的有序集合
-
数组描述的相同类型的若干个数据,按照一定的先后次序排列组合而成
-
每一个数据称作一个数组元素,每个数组元素可以通过一个下标访问他们
2.2 数组声明创建步骤
-
声明一个数组------ int[] nums;
-
创建一个数组------ nums = new int[10];
-
给数组元素赋值------nums[0]=1, nums[1]=2......
数组长度:arrays.length
2.3 初始化和内存分析
1. 静态初始化:创建+赋值
2. 动态初始化:
数组的四个基本特点:
-
长度确定,数组一旦被创建,大小不可改变
-
元素必须是相同类型
-
数组中的元素可以是任何数据类型,包括基本类型和引用类型
-
数组也可以被看成对象,数组中每个元素相当于该对象的成员变量(数组本身就是对象,数组对象本身就在堆中)
2.4 数组的使用
-
For Each 循环
-
数组作方法入参
-
数组作返回值
2.5 多维数组
-
多维数组可以看成是数组的数组,例如二维数组就是一个特殊的一维数组,每一个元素都是一个一维数组
2.6 Arrays类
数组的工具类: java.util.Arrays
Arrays类中的方法都是static修饰的静态方法,可以通过类名直接调用
常用功能:
-
给数组赋值:fill方法
-
给数组排序:sort方法
-
比较数组:equals方法比较数组中元素是否相等
-
查找数组元素:binarySearch方法对数组进行二分查找