Java学习笔记3

方法

方法的定义

Java的方法类似于其它语言的函数,是一段用来完成特定功能的代码片段,一般情况下一个方法包含以下部分:

  • 修饰符:定义了该方法的访问类型(可选);
  • 返回值类型:方法可能会返回值,returnValueType是方法返回值的数据类型,若不返回值,则returnValueType是关键字void;
  • 方法名:方法的名字;
  • 参数类型:参数像是一个占位符,当方法被调用时,传递值给参数;
  • 方法体:具体的方法语句。
//结构
修饰符 返回值类型 方法名(参数类型 参数名){
    ...
    方法体
    ...
    return 返回值;
}

方法调用

调用方法:对象名.方法名(实参列表)

方法调用时根据方法是否具有返回值来选择不同方式。

//打印两个数中的最大值
public static int max1(int x, int y){
    int max = 0;
    if(x >= y){
        max = x;
    }else{
        max = y;
    }
    return max;
}

/*
调用时用
int larger = max1(30, 40);
System.out.println(larger);
*/

public static void max2(int x, int y){
    int max = 0;
    if(x >= y){
        max = x;
    }else{
        max = y;
    }
    System.out.println(max);
}
/*
调用时用
max2(30, 40);
*/

//两者均输出40

注:Java都是值传递

方法的重载

规则

  • 方法名称必须相同;
  • 参数列表至少一个不同(个数,类型,参数排列顺序等);
  • 返回类型可以不同;
  • 仅仅返回类型不同不足以成为方法的重载。

实现理论

方法名称相同时,编译器会根据方法的参数列表逐个匹配,选择对应方法;匹配失败则报错。

可变参数

  • JDK1.5开始,Java支持传递同类型的可变参数给一个方法;
  • 在方法声明中,在指定参数类型后加一个省略号(…);
  • 一个方法只能指定一个可变参数,且必须是方法的最后一个参数,任何普通参数都要在它之前声明。
public static void max(double... nums){
    if(nums.length == 0){
        System.out.println("请正确输入数字!");
    }else {
        double max = nums[0];
        for (int i = 1; i < nums.length; i++) {
            if (nums[i] > max) {
                max = nums[i];
            }
        }
        System.out.println("最大的数是:" + max);
    }
}
/*
max(1,5,47,62,10,5,2);		out:最大的数是:62.0
max();						out:请正确输入数字!
*/

递归方法

  • 递归需要有一个边界条件,否则会发生溢出
  • 采用栈机制,即每一次未执行完成的方法放在栈中等待被完全执行;
  • 由于栈机制的存在,递归的次数不宜过大,否则会崩溃。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值