java零基础(方法)

本文详细介绍了Java中的方法,包括方法的定义、参数类型、返回值、方法重载以及递归算法的应用。通过实例展示了如何创建和使用方法,强调了方法的单一职责原则,并探讨了可变参数的使用。此外,还涵盖了方法的重载,展示了如何根据不同的参数类型实现相同功能的方法。
摘要由CSDN通过智能技术生成

什么是方法

  • java方法是语句的集合,它们在一起执行某个功能

    • 方法是解决某一类问题的步骤的有序组合
    • 方法包含于类或对象中
    • 方法在程序中被创建,在其他地方被引用
  • 设计方法原则:方法的本意是功能块,我们设计的时候最好保持原子性,就是一个方法只完成一个功能,这样利用我们后期扩展

方法的定义

java的方法类似于其他语言的函数,是一段用来完成特定功能的代码片段

  • 方法包含一个方法头和一个方法体

    修饰符 返回值类型 方法名(参数类型 参数名){ --方法头

    。。。

    –方法体

    。。。

    return 返回值;

    }

  1. 修饰符:修饰符,这是可选的,告诉编译器如何调用该方法。定义了该方法的访问类型。

  2. 返回值类型:方法可能会返回值。有些方法执行所需的操作,但没有返回值,在这种情况下,以上公式的返回值类型为关键字void。

  3. 方法名:是方法的实际名称。

  4. 参数类型:形式参数(形参):在方法被调用是用于接收外界输入数据

    ​ 实参:调用方法时实际传给方法的数据

  5. 方法体:方法体包含具体的语句,定义该方法的功能。

    public class Demo1 {
        public static void main(String[] args) {
        //实际参数(实参):实际调用传递给的参数
        int x=add(2,3);
            System.out.println(x);
            test();//Demo1.test()
    
        }
        /*修饰符 返回值类型 方法名(参数类型 参数名){
        ...........
        方法体
        ...........
        return 返回值;
     //若无返回值,则返回值类型为void
        }
        */
        //形式参数(形参):用来定义作用的,可以不使用
        public static int add(int a, int  b){//与类变量一样,想在main方法中调用必须要用关键字static修饰(没学到面向对象之前)
            return a+b;
        }
    
        public  static void test(){//比如把打印九九乘法封装成一个方法
            for (int j =1; j <=9; j++) {
                for (int i = 1; i <= j; i++) {
                    System.out.print(i + "*" + j+ "=" + i*j+"\t");
                }
                System.out.println();//换行
            }
    
        }
    
    }
    
    • 方法的重载
public class Demo02 {
    public static void main(String[] args) {
        double sum1=max(5.0,5.0);
        int sum2=max(5,5);
        System.out.println(sum1);
        System.out.println(sum2);

    }
public static int max(int num1,int num2){
   return num1+num2;
        }
//方法的重载:方法名相同,参数类型个数不同,返回值可以相同也可以不同
    public static double max(double num1,double num2){
  return num1+num2;
    }
     /*
     课后拓展了解:值传递和引用传递,为什么说java是值传递?
     */
}
  • 可变参数

    //可变参数,就是一个方法的参数是可变的,用...表示放在参数的最后
    public class Demo04 {
        public static void main(String[] args) {
            Demo04 demo04 = new Demo04();
            demo04.printMax(25,88,65,65,35);
        }
    
        public  void printMax(double... numbers) {
    
            if(numbers.length==0){
           System.out.println("No argument passed");
           return;
    }
    double result=numbers[0];
            for (int i = 1; i < numbers.length; i++) {
               if(numbers[i]>result) {
                result=numbers[i];
                }
            }
            System.out.println("最大值为:"+result);
        }
    }
    
  • 递归算法

    //递归,当n越大,约影响电脑的性能,只是为了学递归的思想
    public class Demo05 {
        public static void main(String[] args) {
    int sum=x(5);
            System.out.println(sum);
        }
        public static int x(int n){
            if(n==1){
            //满足条件,递归结束
                return 1;
            }else {
                return n*x(n-1);
            }
    
        }
    }
    

在这里插入图片描述

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值