方法
1.方法概述
定义三个代码块
//定义两个变量
int a=10;
int b=20;
//获取两个数中的较大值
int max = a > b?a:b;
//输出结果
System.out.println("max:"+max);
假如在程序中需要很多地方同时使用代码块,就需要在很多地方编写这个代码块,有没有写一次就能在很多地方使用呢,当然是有的,我们把这三个东西打包成为一个东西,叫做方法
2.什么是方法
- 方法(method)是将具有独立功能的代码块组织成为一个整体,使其具有特殊功能的代码集
注意: - 方法必须先创建才可以使用,该过程成为方法定义
- 方法创建后并不是直接运行的,需要手动使用后才执行,该过程更为方法调用
3.方法定义
- 格式:public static void 方法名(){
//方法体
} - 范例:public static void isEvenNumber(){
//方法体
}
4.方法调用
- 格式:方法名()
- 范例:isEvenNumber();
public static void main(String[] args){ //程序的入口方法
//调用方法
isEvenNumber();
}
//需求:定义一个方法,在方法定义中定义一个变量,判断该数据是否是偶数
public static void isEvenNumber(){
//定义变量
int number=(10);
//判断该数据是否是偶数
if(number%2==0){
System.out.println(true);
}else{
System.out.println(false);
}
}
注意:
方法必须先定义后调用,否则程序将报错
5.方法练习
需求:设计一个方法用于打印两个数中的较大数
思路:
- 定义一个方法,用于打印两个数字中的较大数,例如getMax()
`public static void getMax(){
}`` - 方法中定义两个变量,用于保存两个数字
public static void getMax(){
int a=10;
int b=20;
}
- 使用分支语句分两种情况对两个数字的大小关系进行处理
if(a>b){
System.out.println(a);
}else{
System.out.println(b);
}
- 在main()方法中调用定义好的方法
public static void main(String[] args) { //程序的入口方法
//调用方法
getMax();
}
6.带参数方法的定义和调用
6.1带参数的方法定义
- 格式:
public static void 方法名(参数){.......}
- 格式(单个参数):
public static void 方法名(数据类型 变量名){........}
- 范例(单个参数):
public static void isEvenNumber(int number){...........}
- 格式(多个参数):
public static void 方法名(数据类型 变量名1,数据类型 变量名2){.........}
- 范例(多个参数):
public static void getMax(int number1,int number2,.....){........}
注意: - 方法定义时,参数中的数据类型与变量名都不能缺少,缺少任意一个程序将报错
- 方法定义时,多个参数之间使用逗号(,)分隔
6.2带参数方法调用
-
格式:方法名(参数)
-
格式(单个参数):方法名(变量名/常量值)
-
范例(单个参数):isEvenNumber(5);
-
格式(多个参数):方法名(变量名1/常量值1,变量名2/常量值2);
-
范例:(多个参数):getMax(5,6);
注意: -
方法调用时,参数的数量与类型必须与方法定义中的设置相匹配,否则程序将报错
public static void main(String[] args) { //程序的入口方法
//常量调用
isEvenNumber(10);
//变量的调用
int abs=10;
isEvenNumber(abs);
}
//定义一个方法,判断该数据是否是偶数
public static void isEvenNumber(int number){
if(number%2==0){
System.out.println(true);
}else{
System.out.println(false);
}
}
6.3形参和实参
形参:方法定义中的参数
等同于变量的定义格式,例如:int number
实参:方法调用中的参数
等同于使用变量或常量,例如:10 number
public static void main(String[] args) { //程序的入口方法
//常量调用
isEvenNumber(10);//实参
//定义变量,传递
int abs=10;
isEvenNumber(abs);//实参
}
//接收一个变量,判断该数据是否是偶数
public static void isEvenNumber(int number){//形参
if(number%2==0){
System.out.println(true);
}else{
System.out.println(false);
}
}
6.4带参数的方法练习
需求:设计一个方法用于打印两个数中的较大数,数据来自于方法参数
思路:
-
定义一个方法,用于打印两个数字中的较大数,例如getMax()
public static void getMax(){ }
-
为方法定义两个参数,用于接收两个数字
public static void getMax(int a,int b){ }
-
使用分支语句分两种情况对两个数字的大小关系进行处理
-
在main()方法中调用定义好的方法(使用常量)
-
在main()方法中调用定义好的方法(使用变量)
7.带返回方法的定义和调用
7.1带返回值方法定义
-
格式:public static 数据类型 方法名(参数){
return 数据;
} -
范例1:public static boolean isEvenNumber(int numbe){
returntrue;
} -
范例2:public static int getMax(int a,int b){
return 100;
}
注意:
-方法定义时return后面的返回值与方法定义上的数据类型要匹配,否则程序将报错
7.2带返回值方法调用
-
格式1:方法名(参数)
-
范例:isEvenNumber(5);
-
格式2:数据类型 变量名=方法名(参数);
-
范例:boolean flag=isEvenNumber(5);
注意:- 方法的返回值通常会使用变量名接收,否则该返回值将无意义
public static void main(String[] args) { //程序的入口方法
//1.方法名(参数)
//isEvenNumber(10);
//true
//数据类型 变量名=方法名(参数);
boolean flag=isEvenNumber(10);
//相当于 boolean flag=true;
System.out.println(flag);
}
//需求:定义一个方法,该方法接收参数,判断该数据是否是偶数,并返回真假
public static boolean isEvenNumber(int number){
if(number%2==0){
return true;
}else{
return false;
}
}
7.3方法练习
需求:设计一个方法可以获取两个数的较大值,数据来自于参数
思路:
- 定义一个方法,用于获取两个数字中的较大数
- 使用分支语句分两种情况对两个数字的大小关系进行处理
- 根据题设分别设置两种情况下对应的返回结果
- 在main()方法中调用定义好的方法并使用变量保存
- 在main()方法中调用定义好的方法并直接打印结果
public static void main(String[] args) { //程序的入口方法
System.out.println(getMax(10,20));
}
该方法比较简便,还有第二种方法
public static void main(String[] args) { //程序的入口方法
//在main()方法中调用定义好的方法并使用变量保存
int result=getMax(10,20);
//在main()方法中调用定义好的方法并直接打印结果
System.out.println(result);
}
//定义一个方法,用于获取两个数字中的较大数
public static int getMax(int a,int b){
//使用分支语句分两种情况对两个数字的大小关系进行处理
//根据题设分别设置两种情况下对应的返回结果
if(a>b){
return a;
}else{
return b;
}
}
8.方法的注意事项
- 方法不能嵌套定义
正确的方法
public class ArgsDemo {
public static void methodOne(){
//代码片段1
}
public static void methodTow(){
//代码片段2
}
}
错误的方法
public class ArgsDemo {
public static void methodOne(){
//代码片段1xxxx
public static void methodTow(){
//代码片段2xxxx
}
}
}
- void表示无返回值,可以省略return,也可以单独的书写return,后面不加数据
正确的方法
public class ArgsDemo {
public static void method(){
//代码片段
}
}
正确的方法2
public class ArgsDemo {
public static void method(){
//代码片段
return;
}
}
错误的方法
public class ArgsDemo {
public static void method(){
//代码片段
return 100;//不能加数据
}
}
9.方法的通用格式
-
格式:
public static 返回值类型 方法名(参数){ 方法体; return 数据;}
-
public static 修饰符,目前先记住这个格式
-
返回值类型:方法操作完毕之后返回的数据的数据类型
如果方法操作完毕,没有数据返回,这里写void,而且方法体中一般不写return
-
方法名:调用方法时候使用的标识
-
参数:由数据类型和变量名组成,多个参数之间用逗号隔开
-
方法体:完成功能的代码块
-
return:如果方法操作完毕,有数据返回,用于把数据返还给调用者
-
定义方法时,要做到两个明确:
明确参返回值类型:主要是明确方法操作完毕之后是否有数据返回,如果没有,写void;如果有,写对应的数据类型
明确参数:主要是明确参数的类型和数量 -
调用方法时
void类型的方法,直接调用即可
明确参数:主要是明确参数的类型和数量
理想的咸鱼猿©个人笔记