方法种类的详解

1.有参无返回值

会出现在什么场景呢?比如我现在需要得到两个数(哪里调用,哪里就给我),求和打印或者是打印三个数之和。

语法:
定义的语法:
修饰符 返回类型 方法名(形参数1类型 形参数1名字,形参数2类型 形参数2名字,形参数3类型 形参数3名字) {
            // 可以使用参数1
            // 返回语句
        }
调用的语法
方法名(实参数值,实参数值)
作用:

提高方法可复用性

实例:
//方法定义
public static void printSum(int num1, int num2) {
        int sum = num1 + num2;
        System.out.println(sum);
    }

//方法调用
printSum(50,2);//一般要在main函数里调用
// 得到一个数组,输出数组的奇数个数以及偶数个数
    public static void printArrayEvennumAddOddnum(int[] arr) {
        int evenNum = 0;
        int oddNum = 0;
        for (int i = 0; i < arr.length; i++) {
            if(arr[i] % 2 == 0) {
                evenNum++;
            }  else {
                oddNum++;
            }
        }
        System.out.println("奇数个数: " + oddNum + " 偶数个数:" + evenNum );
    }

//方法调用
    public static void main(String[] args) {
        int[] arr = {1,2,3,5,3,5};
        printArrayEvennumAddOddnum(arr);
    }
2.无参有返回值

语法:

修饰符 返回类型 方法名() {
		// 方法体
		return; // 值与返回类型相匹配
	}

调用:

类型 变量名 = 方法名()

作用:
可以得到结果,可以让程序更灵活,更好维护
实例:

// 单一职责(一个函数做一个事情)。
//职责: 1. 随机数组 2. 根据情况打印
    public static int[] methodA() {
        // 需要一个随机数,得到他的和
        Random random = new Random();//随机生成
        int len = random.nextInt(10) + 1;
        System.out.println(len);
        int[] arr = new int[len];
        for (int i = 0; i < arr.length; i++) {
            arr[i] = random.nextInt(100);
        }
        return arr;//返回结果
    }

    public static void main(String[] args) {
        // 返回了一个结果.
        int[] arr = methodA();

        // 拿到arr
        if(arr.length % 2 == 0) {
            System.out.println(Arrays.toString(arr));
        }

3.有参有返回值

格式:

修饰符 返回值类型 方法名(参数列表) {
		// 方法体
		返回语句;
	}

简单举个会使用到的场景:
求两个数的和然后打印出来。
方法体可以理解为一只下单的鸡,参数就是喂养的饲料,蛋就是返回值。

public class Main {
    public static void main(String[] args) {
        int result = addNumbers(5, 3);
        System.out.println("The result is: " + result);
    }
    
    public static int addNumbers(int num1, int num2) {
        return num1 + num2;
    }
}
4.方法重载

如何理解?
方法名相同,但是参数列表不同的方法。
参数列表不同的情况:

  • 参数个数不同
  • 参数类型不同
  • 参数类型顺序不同

如何判断两个方法是否为重载方法呢?其一般与参数名和返回值无关。

public static void open(){}  // 1
public static void open(int a){}  // 2

static void open(int a,int b){} //3

public static void open(double a,int b){} // 4
public static void open(int a,double b){} // 5

public void open(int i,double d){} // 6

public static void OPEN(){} // 7
public static void open(int i,int j){} // 8

以上给了一些方法调用的例子,各位读者可以看看自己是否可以判断出哪些不是方法重载

请不要忘记一键三连!!!!!!

image.png

  • 7
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

我不是少爷.

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值