一.方法的含义:
方法(method)是程序中最小的执行单元
二.什么时候用到方法?
重复的代码,具有独立功能的代码可以抽取到方法中
三.方法的好处:
1. 可以提高代码的复用性
2. 可以提高代码的可维护性
四.方法的格式:
方法定义:把一些代码打包在一起,该过程称为方法定义方法调用:方法定义后并不是直接运行的,需要手动调用才能执行,该过程称为方法调用
1.最简单的方法定义和调用:
定义格式:
public static void 方法名(){
方法体(就是打包起来的代码);
}
例:
public static void IT梦(){
System.out.println("name:");
System.out.println("age:");
System.out.println("gender:");
}
调用格式:
方法名();
例:
IT梦();
代码演示:
public class IT梦 {
public static void main(String[] args) {
playganme();
}
public static void playganme(){
System.out.println("开始游戏");
System.out.println("输了");
System.out.println("甩锅");
}
}
注意:方法必须先定义后调用,否则程序会报错
2.带参数的方法定义和调用
定义格式:
public static void 方法名(参数1,参数2, ...){
......
}
例:
public static void number(int number1,int number2){
......
}
调用格式:
方法名(参数1,参数2, ...);
例:
number(10,20);
代码演示:
public class IT梦 {
public static void main(String[] args) {
count(10,20);
}
public static void count(int number1,int number2){
int result = number1 + number2;
System.out.println(result);
}
}
注意:方法调用时,参数的数量与类型必须与方法定义中小括号里面的变量一一对应,否则程序会报错
形参和实参:
1.形参:全称形式参数,是指方法定义中的参数2.实参:全称实际参数,方法调用中的参数
3.带返回值的方法定义和调用:
方法的返回值其实就是方法运行的最终结果
定义格式:
public static 返回值类型 方法名 (参数) {
方法体;
return 返回值;
}
例:
public static int count (int number1,int number2) {
int number3 = number1 + number2;
return number3;
}
调用格式:
1.直接调用:
方法名(实参);
2.赋值调用:
整数类型 变量名 = 方法名 (实参);
3.输出调用:
System.out.println(方法名(实参));
代码演示:
public class IT梦 {
public static void main(String[] args) {
//直接调用
count(10,20);
//赋值调用
int result = count(10,20);
System.out.println(result);
//输出调用
System.out.println(count(10,20));
}
public static int count(int a,int b) {
int c = a + b;
return c;
}
}
什么时候用到有返回值的方法:
在调用处要根据方法的结果,去编写另外一段代码
方法的注意事项:
1. 方法不调用就不执行2. 方法与方法之间是平级关系,不能互相嵌套3. 方法的编写顺序和执行顺序无关4. 方法的返回值类型为void,表示该方法没有返回值,没有返回值的方法可以省略return语句不写,如果要编写return,后面不能跟具体的数据5. return语句下面不能编写代码,因为永远执行不到,属于无效代码
扩展—return关键字:
方法没有返回值:可以省略不写,如果书写,表示结束方法方法有返回值:必须要写,表示结束方法和返回结果
方法的重载:
在同一个类中,定义了多个同名的方法,这些同名的方法具有同种的功能,每个方法具有不同的参数类型或参数个数,这些同名的方法,就构成了重载关系简单理解:同一个类中,方法名相同,参数不同的方法(与返回值无关)参数不同可以分为:个数不同,类型不同,顺序不同注:java虚拟机会通过参数的不同来区分同名的方法
练习:
1.数组遍历:设计一个方法用于数组遍历,要求遍历的结果是在一行上;
例:[10,20,30,40,50]
注:
//先打印IT梦,在换行
System.out.println("IT梦");
//只打印IT梦,不换行
System.out.print("IT梦");
//不打印任何数据,只换行
System.out.println();
答案:
2.数组最大值:设计一个方法求数组的最大值,并将最大值返回
答案:
3.判断数字是否存在:键盘录入一个数,定义一个方法判断这个数是否存在于数组中,将结果返回调用处,存在返回true,不存在则返回false
答案:
拓展:
1. 基本数据类型变量中存储的是真实的数据2. 引用数据类型变量中存储的是地址值(引用:使用了其他空间中的数据)
从内存的角度去解释:基本数据类型:数据值是存储在自己的空间中特点:赋值给其他变量,也是赋的真实的值引用数据类型:数据值是存储在其他空间中,自己空间中存储的是地址值特点:赋值给其他变量,赋的是地址值
方法的值传递:
1.传递基本数据类型时,传递的是真实的数据,形参的改变,不影响实际参数的值2.传递引用数据类型时,传递的是地址值,形参的改变,影响实际参数的值
声明:本站所有文章,如无特殊说明或标注,均为本站原创发布。任何个人或组织,在未征得本站同意时,禁止复制、盗用、采集、发布本站内容到任何网站、书籍等各类媒体平台。如若本站内容侵犯了原著者的合法权益,可联系我们进行处理。