一、方法
- Java方法是语句的集合,是解决一类问题的步骤的有序组合
- 包含于类或对象中
- 在程序中被创建,在其它地方被引用
- 在设计方法时,最好保持方法的原子性:即一个方法只完成一个功能
- 方法的命名规则:首字母小写,运用驼峰命名法
定义:
// 方法包含一个方法头和一个方法体
修饰符 返回值类型 方法名(参数类型 参数名){
方法体
return 返回值;
}
重载:
- 在一个类中,方法名称相同,但形式参数不同
- 方法名称必须相同
- 参数必须不同(个数不同、类型不同、参数排列顺序不同等)
- 返回值的类型可以相同也可以不同
可变参数:
- jdk1.5之后,Java支持传递同类型的可变参数给一个方法
- 在方法声明中,在指定的参数类型后面加一个省略号(…)
- 一个方法中只能指定一个可变参数,它必须是方法的最后一个参数,任何普通的参数必须在它之前声明
public class Demo1 {
public static void main(String[] args) {
Demo1 demo1 = new Demo1();
demo1.test(1,2,3,4);
}
// 可变参数
public void test(int... i){
System.out.println(i[0]);
System.out.println(i[1]);
System.out.println(i[2]);
System.out.println(i[3]);
}
}
递归:
- 方法自己调用自己
- 递归方法包含两个部分:递归头、递归体
- 如果没有递归头,将进入死循环
二、数组
定义:
- 数组是相同类型数据的有序集合
- 每一个数据是一个数组元素,每个数组元素都可以通过数组下标来访问
- 数组下标是从0开始的
- 获取数组的长度:.length
public class Demo1 {
public static void main(String[] args) {
// 声明数组变量,下面这两种声明方式都是可以的
int[] num; // 首选方法
int nums[]; // 不是首选
num = new int[10]; // 可以存放10个int类型的数字
int sizeS = num.length; // 数组的长度
int[][] numm = new int[2][5]; // 二维数组,2行5列的数组
}
}
特点:
- 长度是确定的;数组一旦创建,它的大小是不可以改变的
- 元素必须是相同类型,不允许出现混合类型
- 数组中的元素可以是任何数据类型,包括基本类型和引用类型
- 数组变量属引用类型,数组本身就是对象,Java中对象是在堆中的,所以数组对象本身是存在于堆中的
# 数组有个工具类:java.util.Arrays,专门对数组里面的数据进行一些操作
# Arrays类里面的方法都是static修饰的静态方法,使用的时候可以直接通过类名调用,而不用对象来调用
# 常用的功能:
# 1) Arrays.fill(); 给数组赋值
# 2) Arrays.sort(); 对数组排序,升序
# 3) Arrays.equals(); 比较数组中的元素值是否相等
# 4) Arrays.binarySearch(); 对排序好的数组进行二分查找法操作
稀疏数组:
- 当一个数组中大部分元素为0,或者为同一值的数组,可以使用稀疏数组来保存该数组数据
- 处理方式:记录数组一共有几行几列,有多少个不同值;把具有不同值的元素、行列及值记录在一个小规模的数组中,从而缩小程序的规模