1.方法定义的技巧说明:
修饰符 返回值类型 方法名( 形参列表 ) {
方法体代码( 需要执行的功能代码 )
return 返回值;
}
1.修饰符:public static-----→暂时固定用这个
2.方法名称:自己取名字,有意义,英文小写,满足驼峰模式
3.方法体代码:完成自己需要写的功能即可
重点关注:
1.分析方法是否需要申明返回值类型;
2.分析方法是否需要接收参数;
2.方法案例:求和
需求: 定义一个方法,方法中计算出 1到n 的和并返回
分析:
根据格式编写方法 ——> 因为 n 不固定,所以方法 需要声明形参接收;要返回结果,需要申明返回值类型
方法内部 ——> 使用for循环计算出 1到n 的和并返回
实现:
1.定义一个有参数、有返回值的方法,取名为sum,设置形参1为n,类型为int
2.在方法内,使用for循环计算出 1—n 的和
(2-1) 先在循环外定义个求和变量,初始值为0,用于存放求和结果
(2-2) 使用for循环,将1到n 之间的所有数字遍历一遍,取出求和
(2-3) 在循环内,编写求和语句,使每一次遍历到的数字加起来
3.for循环结束后,将求和结果返回给sum方法
4.在main——>主方法内,键盘输入然后调用求和方法,并传入参数number,相当于要求计算:1—n之间的数字和,定义变量接收方法的调用
5.输出1—n的和到控制台
public static int sum(int n){ //定义一个有参数,有返回值的方法,取名为sum,设置形参为n,类型为int
int sum = 0; //定义一个存储求和结果的变量
for (int i = 1; i <=n ; i++) { //使用for循环,将1-n之间的所有数字遍历一遍
sum+=i; //在循环内编写求和语句,使得每一次遍历到的数字加起来
}
return sum; //for循环结束后,将求和结果返回给sum
}
public static void main(String[] args) {
Scanner sc = new Scanner(System.in);
System.out.println("输入数字");
int number = sc.nextInt();
System.out.println("1-"+number+"的和等于"+sum(number)); //主方法内调用求和方法
}
输出结果:
好处: 写好求和方法后,封装起来了,当你想求 1—n(任意正整数) 之间的和的时候,只需要在主方法里调用求和方法,传入一个任意数,就可以求出 1—n 的和了。
3.方法案例:判断奇偶数
需求: 拿一个整数,通过调用方法,判断该数是奇数还是偶数
分析:
根据格式编写方法 ——> 因为要判断一个整数,所以需要定义一个有参数、无返回值的方法
方法内部 ——> 使用if,通过使用求余数的方法来判断:如果这个整数 模2余0,则提示:该数 + “是偶数”;否则提示:该数 + “是奇数”
实现:
定义一个判断奇偶数的方法:返回值类型为void,形参1为number——用于接收传入的整数
在方法内,使用if判断:
(2-1) 如果这个整数 除2余0,则提示:该数 + “是偶数”;
(2-2) 否则提示:该数 + “是奇数”
在main——主方法内:
(3-1) 创建键盘录入Scanner对象,用于录入一个整数
(3-2) 调用键盘录入功能,录入一个整数,并用变量接收
(3-3) 调用判断奇偶数的方法,将录入的整数 传入 方法中
public static void ParityJudgment(int number){ //定义一个判断奇偶数的方法,返回值类型为void,形参1为number,用于接收传入的整数
if (number %2 != 0){ //定义一个if判断奇偶数,如果整数除2不等于0,则提示该数是奇数
System.out.println(number+"是奇数");
}else {
System.out.println(number+"是偶数"); //反之则提示偶数
}
}
public static void main(String[] args) {
Scanner sc02 = new Scanner(System.in);
System.out.println("输入一个整数判断奇偶数");
int number02 = sc02.nextInt();
ParityJudgment(number02);
}
输出结果:
- 注意点: 当你的方法的返回值类型为void的时候,调用方法时,既不能用变量接收,也不能输出,只能直接调用,有参数就传入,无参数就不需要传入。否则会报错
四、方法案例:数组求最值
需求:通过调用方法,选出以下数组中的最大数
数字:15、9000、10000、20000、9500、-5
- 分析:
- 根据格式编写方法 ——> 由于数字属于同一批类型的数据,所以要传入一个数组,
因此需要定义一个有参数、有返回值的方法。
- 在方法内部 ——> 选出最大数字
分析:
根据格式编写方法 ——> 由于数字属于同一批类型的数据,所以要传入一个数组,因此需要定义一个有参数、有返回值的方法
在方法内部 ——> 选出最大数值
实现:
定义求最值的方法:返回值类型为int,取名为max,形参1为数组类型的maxValue
在方法内:
(2-1) 定义一个最大值变量max,用于存放最高颜值,初始值为众多颜值中的一个颜值,建议使用首个颜值
(2-2) 使用for循环,遍历一遍所有颜值:
(2-2-1) 在循环内,使用if判断:
如果遍历的数字高于 首个数字的话,则最高数字替换为遍历的数字;
否则,遍历的数字低于 首个数字,直接淘汰,不进入if判断,有请下一个遍历的数字进行比较,直到选出最高数字。
循环结束后(选拔结束),将最高数字返回(公布一下最高数字)
在main——主方法内:
(4-1) 静态初始化一个整数类型的数组,用于存放众多数字
(4-2) 调用方法,将数字数组 传入 方法,并输出——>也可以先用变量接收,再输出
public static int getArrayMax(int[]maxValue){ //定义选美的方法:返回值类型为int,取名getArrayMAX,形参1为数组类型的maxValue
int max = maxValue[0]; //定义一个最大值变量max,用于存放最大数字,初始值为一个数字,建议使用首个数字
for (int i = 1; i < maxValue.length; i++) { //使用for循环,遍历一遍所有数字
if (maxValue[i]>max){ //如果遍历的数字大于第一个数字则最大数字替换遍历的数字,如果低于首个数字直接淘汰不进入if判断进入下一个遍历的数字
max = maxValue[i];
}
}
return max; //循环结束,将最大数字返回
}
public static void main(String[] args) {
int[]faceValue = {15,9000,10000,2000,9500,-5};
int max = getArrayMax(faceValue);
System.out.println("最大的数值是"+max);
}
输出结果:
数组求最值的小结
1、如何使用方法返回一个整型数组的最大值?
- 方法需要申明返回值类型:int
- 方法需要定义形参列表:(int[] maxValue)