一、数组、
概述
数组是一种数据结构,用于存储相同类型的多个元素。数组是一种强类型的,这意味着数组内的所有元素必须是相同的数据类型。数组是有序的,这意味着每一个元素都有一个位置(索引),可以通过索引访问数组中的元素。
使用
数组的声明和使用包括以下几个步骤:
-
声明数组:指定数组变量的数据类型和数组的大小。
-
初始化数组:为数组分配内存空间,并为数组元素赋初始值。
-
使用数组:通过索引访问和操作数组元素。
定义格式
1、数据类型[] 数组名
int[] arr;
2、数据类型 数组名[]
int arr[];
数组的动态初始化
数组动态初始化就是只给定数组的长度,由系统给出默认初始化值
动态初始化格式
数据类型[] 数组名 = new 数据类型[数组长度];
int[] arr = new int[3];
数组元素访问
每一个存储到数组的元素,都会自动的拥有一个编号,从0开始。
这个自动编号称为数组索引(index),可以通过数组的索引访问到数组中的元素。数组名[索引];
数组的静态初始化
在创建数组时,直接将元素确定
数据类型[] 数组名 = new 数据类型[]{元素1,元素2,...};
数据类型[] 数组名 = {元素1,元素2,...};
数组操作的两个常见问题
索引越界异常
数组长度为3,索引范围是0~2,但是我们却访问了一个3的索引。程序运行后,将会抛出ArrayIndexOutOfBoundsException 数组越界异常。在开发中,数组的越界异常是不能出现的,一旦出现了,就必须要修改我们编写的代码。
空指针异常
public class ArrayDemo {
public static void main(String[] args) {
int[] arr = new int[3];
//把null赋值给数组
arr = null;
System.out.println(arr[0]);
}
}
arr = null 这行代码,意味着变量arr将不会在保存数组的内存地址,也就不允许再操作数组了,因此运行的时候会抛出 NullPointerException 空指针异常。在开发中,空指针异常是不能出现的,一旦出现了,就必须要修改我们编写的代码。
数组遍历
数组遍历:就是将数组中的每个元素分别获取出来,就是遍历。遍历也是数组操作中的基石。
public class ArrayTest01 {
public static void main(String[] args) {
//定义数组
int[] arr = {11, 22, 33, 44, 55};
//使用通用的遍历格式
for(int x=0; x<arr.length; x++) {
System.out.println(arr[x]);
}
}
}
二、方法
概述
Java方法是Java编程语言中的一个核心概念,它允许将一段可重复使用的代码封装起来,以便在程序的不同部分调用执行。方法可以看作是程序中的一个功能单元,通过定义方法,可以将复杂的程序分解为更小、更易于管理的部分。
方法的定义
-
定义方法的基本语法包括修饰符、返回值类型、方法名称和参数列表。例如,
public static int getSum(int a, int b)
定义了一个公共静态方法,用于计算两个整数的和。方法的主体部分包含实现该功能的代码,如return a + b;
。 -
方法的调用
-
调用方法时,需要传递实际参数给方法,这些参数被称为实际参数(或实参),而方法定义中的参数称为形式参数(或形参)。例如,在调用
getSum(5, 6)
时,5和6是实际参数,而方法定义中的int a, int b
是形式参数。 -
方法的分类
-
方法的分类主要包括实例方法和静态方法。实例方法需要创建类的对象后通过对象来调用,而静态方法可以直接通过类名来调用,无需创建对象。例如,
ClassName.staticMethodName()
是静态方法的调用方式。 -
方法的优点
-
方法的优点包括代码重用、提高程序的可读性和可维护性。通过将功能封装在方法中,可以在多个地方调用该方法,而无需重复编写相同的代码。这有助于减少代码冗余,提高开发效率。
-
示例:例如,比较两个整数是否相等的方法
public static boolean compare(int a, int b)
可以通过if (a == b) return true; else return false;
来实现比较逻辑。这个方法可以用于检查两个整数是否相等,并返回一个布尔值表示比较结果。 -
通过学习和使用Java方法,开发者可以更加高效地组织和管理代码,从而提高软件开发的效率和代码的质量。
-
方法重载
-
方法重载指同一个类中定义的多个方法之间的关系,满足下列条件的多个方法相互构成重载
-
多个方法在同一个类中
-
多个方法具有相同的方法名
-
多个方法的参数不相同,类型不同或者数量不同
-
-
注意:
-
重载仅对应方法的定义,与方法的调用无关,调用方式参照标准格式
-
重载仅针对同一个类中方法的名称与参数进行识别,与返回值无关,换句话说不能通过返回值来判定两个方法是否相互构成重载
-