day05-Java方法详解

Java方法详解

1、何为方法

image-20220117232224644

2、方法的定义以及调用

方法的定义

方法的定义

方法的调用

方法的调用

3、方法重载

方法

4、命令行传参

命令行传参

5、可变参数


(不定项参数)

可变参数

6、递归

递归

阶乘

package com.kuang.method;

public class Demo05 {
    public static void main(String[] args) {
        System.out.println(f(5));
    }

    //5! 5*4*3*2*1
    //n! n*(n-1)···*2*1
    public static int f(int n){
        if (n == 1) {
            return 1;
        } else {
           return n*f(n-1);
        }
    }
}

递归调用图解

7、作业

题目

练习题

代码

package com.kuang.method;

import java.util.Scanner;

public class ComputerDemo {
    public static void main(String[] args) {
        Scanner scanner = new Scanner(System.in);
        double a=0,b=0;
        char c=0;
        System.out.println("请输入操作数:");
        if(scanner.hasNextDouble()) {
            a=scanner.nextDouble();
            while (true) {
                System.out.println("请输入操作符:");
                if (scanner.hasNextLine()) {
                    char str = scanner.next().charAt(0);
                //    System.out.println(str);
                    if (str == '+' || str == '-' || str == '*' || str == '/') {
                        System.out.println("请输入操作数");
                        if (scanner.hasNextDouble()) {
                            b=scanner.nextDouble();
                            switch (str) {
                                case '+':
                                    a = add(a, b);
                                    System.out.println("结果为:"+a);
                                    break;
                                case '-':
                                    a = sub(a, b);
                                    System.out.println("结果为:"+a);
                                    break;
                                case '*':
                                    a = mul(a, b);
                                    System.out.println("结果为:"+a);
                                    break;
                                case '/':
                                    a = div(a, b);
                                    System.out.println("结果为:"+a);
                                    break;
                                default:
                                    System.out.println("操作符错误");
                                    break;
                            }
                        }else{
                            System.out.println("操作数错误");
                            break;
                        }
                    }else{
                        System.out.println("操作符错误");
                        break;
                    }
                }else{
                    System.out.println("操作符错误");
                    break;
                }
            }
        }else{
            System.out.println("操作数错误");
        }
    }

    public static double add(double a,double b){
        double result = a + b;
        return result;
    }
    public static double sub(double a,double b){
        double result = a - b;
        return result;
    }
    public static double mul(double a,double b){
        double result = a * b;
        return result;
    }
    public static double div(double a,double b){
        double result = a / b;
        return result;
    }
}

posted @ 2022-01-18 16:30  xiaoxuxiansheng  阅读(31)  评论(0)    收藏  举报