最近学习的java方法基础

java方法

  • Java为值传递

  • 可变参数:在方法声明中,在指参数类型后加一个省略号(...),可以传递很多个值进去。

    一个方法中只能指定一个可变参数,它必须是方法的最后一个参数。普通参数要在它之前声明。

    public class demo1 {
        public static void main(String[] args) {
           demo1 x=new demo1();
           x.test(1);
           x.test(34,54,23);
        }
        public void test(int ...i){
            for(int x:i) {
                System.out.println(x);
            }
        }
    }
    

简易计算器

import java.util.Scanner;

public class demo1 {
    public static void main(String[] args) {
        Scanner sc = new Scanner(System.in);
        String x ;
        do {
            System.out.println("请输入你要进行的操作:");
            x = sc.next();
            if (x.equals("exit")) break;
            try {
                System.out.println("请输入进行操作的数字:");
                double a = sc.nextDouble();
                double b = sc.nextDouble();
                switch (x) {
                    case "+":
                        System.out.println(add(a, b));
                        break;
                    case "-":
                        System.out.println(sub(a, b));
                        break;
                    case "*":
                        System.out.println(mul(a, b));
                        break;
                    case "/":
                        if (b == 0) System.out.println("除数不能为0");
                        else System.out.println(div(a, b));
                        break;
                    default:
                        System.out.println("无效的运算符");
                }
            }catch (Exception e) {
                System.out.println("请输入有效的数字");
                sc.next();
            }
        } while (true);
        sc.close();
    }

    public static double add(double a, double b) {
        return a + b;
    }

    public static double sub(double a, double b) {
        return a - b;
    }

    public static double mul(double a, double b) {
        return a * b;
    }

    public static double div(double a, double b) {
        return a / b;
    }

}

递归(基数不大的情况下,优势为快)

import java.util.Scanner;

public class demo1 {
    public static void main(String[] args) {
        Scanner sc = new Scanner(System.in);
        System.out.println("该数字的阶乘为:"+test(sc.nextInt()));
        sc.close();
    }
    public static int test(int i){
        if(i==1||i==0){
            return 1;
        }
        else return i*test(i-1);//递归调用
    }
}

posted @ 2025-11-15 17:36  芒果学代码  阅读(0)  评论(0)    收藏  举报