Java基础(十一)---- 方法的详细介绍


一、定义方法的格式详解

1.方法的含义

方法就是若干语句组成一个功能

2.方法介绍

方法就像一个工厂:有进去的东西也有出来的东西
例如:
面粉工厂     原料:小麦
                   产品:面粉
钢铁工厂     原料:铁矿石、煤炭
                   产品:钢铁

方法的参数:进入方法的数据(相当于进入工厂的原料)
方法的返回值:从方法出来的数据(相当于工厂生产的产品)

3.完整定义格式

修饰符 返回值类型 方法名称(参数类型 参数名称,参数类型 参数名称,……){
	方法体;
	return 返回值;
}

各部分解释
修饰符:现阶段固定写法,public static
返回值类型:方法最终产生的数据结果是是什么类型
方法名称:方法的名字,命名规则和变量一样,小驼峰
参数类型:进入方法的数据是什么类型
参数名称:进入方法的数据对应的变量名称
PS参数如果有多个,使用逗号进行分隔
方法体:方法需要做的事情,若干行代码
return:两个作用①第一停止当前方法②将后面返回值还给调用处
注意return后面的“返回值”,必须和方法名称前面的“返回值类型”,保持对应

二、方法定义的两个明确,三个要素

1.三要素返回值类型方法名称参数列表

2.两明确有参数无参数有返回值无返回值

代码实例
(1)有参数无参数

/*
有参数:小括号内有内容,当一个方法需要一些数据餐能完成任务时,就是有参数
例:两个数相加

无参数:小括号当中留空,一个方法不需要任何数据条件,自己能独立完成,就是无参数
例:打印10次helloworld
 */

public class MethodParam {

    public static void main(String[] args) {
        method01(23,17);
        //System.out.println(method01(12,10));
        method02();
    }

    /*
    两个数相乘,必须知道两个数据体是多少,否则无法进行计算
    有参数:
     */
    public static void method01(int a, int b){
        int result = a*b;
        System.out.println("结果是"+result);
    }

    public static void method02(){
        for (int a = 0; a < 10; a++) {
            System.out.println("HelloWorld"+(a+1));
        }
    }
}

(2)有返回值无返回值

/*
题目要求:定义一个方法,【求出】两个数字之和
题目变形:定义一个方法,【打印】两个数字之和
 */

/*
返回值类型为void,只能进行单独调用、不能进行打印和赋值调用
 */
public class MethodReturn {

    public static void main(String[] args) {
        //==========有返回值=============
        //单独
        System.out.println("返回值是:");
        getSum(13,56);
        //打印
        System.out.println("返回值是:" + getSum(12,25));
        //赋值
        int c =  getSum(15,46);
        System.out.println("返回值是:" + c);
        System.out.println();
        //===========无返回值==============
        printSum(12,13);
    }
    //我是一个方法,我负责两个数字相加
    //我有返回值int,谁调用我,我吧计算结果返还给谁
    public static int getSum(int a,int b){
        int result = a + b;
        return result;
    }

    public static void printSum(int a, int b){
        int result = a + b ;
        System.out.println("结果是" + result);
    }
}

三、调用方法的三种形式

1.单独调用

方法名称(参数);

2.打印调用

System.out.println(方法名称(参数));

3.赋值调用

数据类型 变量名称 = 方法名称(参数);

4.练习

public class MethodCall {

    public static void main(String[] args) {
    
        //====================单独调用====================
        sum(10,20);
        System.out.println("======================");
        
        //====================打印调用====================
        System.out.println("a+b的和为:"+sum(1,2));
        System.out.println("======================");
        
        //====================赋值调用====================
        int num = sum(3,4);
        System.out.println("a+b的和为:"+num);
    }
    
    public static int sum(int a,int b){
        System.out.println("方法已经执行");
        int result = a+b ;
        return result;
    }
}

运行结果如下:
在这里插入图片描述
第一个单独调用方法已经执行了,但是由于没有打印语句将返回值打印,所以不显示返回值的值

四、方法调用流程图解

1.图解

在这里插入图片描述

2.练习

1.判断两个数是否相等

public class MethodSame {
    public static void main(String[] args) {
        System.out.println(isame(10,15));//false
        System.out.println(isame(10,10));//true
    }

    public static boolean isame(int a,int b){
    
        //..............................方法1
        //boolean same;
        //if(a==b){
            //same = true;
        //}else{
            //same = false;
        //}
        //return same;
        
        //..............................方法2
        //boolean same;
        //same = a==b ? true:false;
        //return same;
        
        //..............................方法3
        //boolean same;
        //same = a==b;
        //return same;
        
        //..............................方法4
        return a==b;
    }
}

2.求出1~100的和

public class MethodSum{
    public static void main(String[] args) {
        getSum01();//5050
        System.out.println("1~100的和是"+getSum02());
    }
//================无返回值的方法===============
    public static void getSum01(){
        int sum=0;
        for( int a=1;a<=100;a++){
            sum = sum + a;
        }
        System.out.println("1~100的和是"+sum);
        //System. out. println("....");
    }

//================有返回值的方法===============
    public static int getSum02(){
        int sum = 0;
        for (int i = 1; i <= 100; i++) {
            sum+=i;
        }
        return sum;
    }
}

3.输出指定次数HelloWorld

public class MethodPrint{

    public static void main(String[] args) {
        printCount(5);//输出5次HelloWorld
    }

    public static void printCount(int a){
        for( int i=0;i<a;i++){
            System.out.println("HelloWorld"+(i+1));
        }
    }
}

五、定义方法的注意事项

1.返回值类型为void只能进行单独调用、不能进行打印和赋值调用
2.方法应该定义在类中,不能在方法中再次定义方法
3.方法定义先后顺序无所谓
4.调用之后方法才会执行
5.如果方法有返回值,那么必须注明 return返回值;
6.return后面的返回数据必须和方法返回值类型对应起来
7.对于一个没有void没有返回值的方法,不能写return后面的返回值,只能return自己
8.对于无返回值的方法,最后一行return可以省略不写
9.一个方法中可以有多个return语句,但必须保证同时只有一个会被执行两个return不能连写

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值