这是一个目录
方法注意事项
1、方法应该在类中,但不能在方法中再定义方法,不能嵌套
2、方法定义的前后顺序无所谓
3、方法定义后不会执行,要调用,单独调用、打印调用、赋值调用
4、方法有返回值,要写上return
5、return的返回值数据必须和方法的返回值数据对应起来
6、void方法没有返回值
7、一个方法可以有多个return语句,但是必须保证只有一个被执行
方法重载overload
多个方法名称一样,但是参数列表不一样。只需记得一个方法的名称
注意事项
1、方法重载与下列因素相关:参数类型不同;参数个数不同;参数多类型顺序不同
2、方法重载与参数的名称无关
3、与方法的返回值类型无关
4、和public和static无关,是否公开、静态
数组
一种容器,存放多个数据值
特点:
一种引用数据类型
数组中的多个数据类型必须统一
数组的长度在程序运行期间不能改变
数组初始化
动态初始化(指定长度)
数据类型[] 数组名称 = new 数据类型[数组长度]
int[] arrayA = new int[300]
double[] arrayB = new double[10]
String[] arrayC = new String[30]
为数组开辟空间
静态初始化(指定内容)
数据类型[] 数组名称 = new 数据类型[] {元素1,元素2,...}
int[] arrayA = new int[]{5,15,25}
String[] arrayB = new String[]{"Hello","World","java"}
//省略格式
数据类型[] 数组名称 = {元素1,元素2,...}
//标准格式可以拆分成两个步骤
int[] arrayA;
arrayA = new int[]{11,12}
//静态初始化的省略格式不能拆分
访问数组元素进行获取
// An highlighted block
int[] array = {10,20,30};
//直接打印数组名称,得到的是数组对应的内存地址哈希值
System.out.println(array);
//索引值代表数组中元素的编号,从0开始
System.out.println(array[0]);
System.out.println(array[1]);
System.out.println(array[2]);
访问数组元素进行赋值
// 使用动态初始化,元素会自动拥有一个默认值
//整数类型默认为0;浮点类型默认为0.0;布尔类型默认为false;引用类型默认为null
int[] array = new int[3];
//直接打印数组名称,得到的是数组对应的内存地址哈希值
System.out.println(array);
//索引值代表数组中元素的编号,从0开始
System.out.println(array[0]);
System.out.println(array[1]);
System.out.println(array[2]);
array[0]=123;//赋值
获取数组长度
// 数组名称.length
int[] arrayB = {10,20,30}
int len = arrayB.length;
数组的遍历
对数组中的每一个元素逐一处理
int[] arrayB = {10,20,30,40,50}
for(int i=0;i<arrayB.length;i++){
System.out.println(arrayB[i]);
}
//求数组的最大值
int max = arrayB[0];
for(int i=0;i<arrayB.length;i++){
if(arrayB[i]>max){
max=arrayB[i];
}
System.out.println(max);
}
数组元素反转
// 数组元素反转
int array = {10,20,30,40,50}
for(int min = 0, max = array.length - 1; min < max; min++, max--){
int temp = array[min];
array[min]= array[max];
array[max] = temp;
}
数组作为方法参数
//任何数据类型都能作为参数
public static void printArray(int[] array){
for(int i = 0; i < array.length; i++){
System.out.println(array[i]);
}
}
printArray(array);
//传递的是地址