查找
顺序查找
二分查找
二维数组
一维数组的每个元素也是一个数组
初始化
- 动态初始化,类型[] [] 数组名 = new 类型[大小] [大小]
- 动态初始化,先声明, 类型[] [] 数组名,在定义,数组名 = new 类型[大小] [大小]
- 动态初始化,列数不确定形式,int[] [] arr = new int[3] [], arr[i] = new int[i + 1]
- 静态初始化,类型[] [] 数组名 = {{}, {}};
int [] [] arr = {{}, {}};
面向对象
创建对象
访问属性
Java内存分配机制
- 栈:一般存放基本数据类型
- 堆:存放对象
- 方法区:常量池(常量:如字符串),类加载信息
对象创建流程
先加载,Person类信息(类和属性,只会加载一次)
在堆中分配空间,进行默认初始化
把地址分配给p,p就指向对象
进行指定初始化
Person p = new Person();
p.name = "jack";
p.age = 10;
成员方法
方法的定义
注意一个方法最多有一个返回值
如果方法要求有返回数据类型,则方法体中最后的执行语句必须为return值
方法不能嵌套
传参机制
- 基本数据类型,传递的是值,形参的操作不影响实参
- 引用类型传递的是地址,形参操作影响实参,但是在方法里改变形参的指向,不会影响实参的指向(形参和实参不是同一个变量)
方法递归调用
递归就是方法自己调用自己,每次调用传入不同变量
迷宫、八皇后、汉诺塔等实践暂时不看了
方法重载OverLoad
可变参数
作用域
注意局部变量没有默认值