java方法中不熟悉的知识点

本文介绍了Java编程中的方法定义,包括修饰符、返回值类型、方法名和参数类型。接着讲解了方法的重载,强调了重载的关键在于相同方法名和不同的参数列表。此外,还解释了Java中的可变参数,允许方法接受可变数量的参数。文章以一个计算器程序为例,展示了如何实现加减乘除操作,并通过用户交互接收输入数据。
摘要由CSDN通过智能技术生成

一、方法的定义

  • 方法即是用来完成一段特定功能的代码片段,一般方法包含以下语法:

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

    ​ 。。。

    ​ 方法体

    ​ 。。。

    ​ return 返回值;

    ​ }

    • 方法包含方法体方法头
      • 修饰符:可选的,告诉编译器如何调用该方法,如public,static

        有static的是静态方法,没有的则是非静态方法。

        区别:

        • 若是静态方法,在其他类中调用的话,可以直接用类名.方法名进行调用
        • 若是非静态方法,在其他类中调用的话,需要先实例化这个类,即new,如Student student = new Student();,然后再用student.方法名进行调用
      • 返回值类型:方法可能会返回值,但是当为void的时候就是没有返回值

      • 方法名:方法的实际名称

      • 参数类型:参数像是一个占位符,当方法被调用时传递值给参数。括号内可以没有参数,也可以拥有多少参数,分为形参和实参

        • 形参:方法被调用时用于接收外界输入的数据,如add(int a,int b)
        • 实参:调用方法时传给方法的值,如add(10,20)
      • 方法体:实现具体功能的语句

二、方法重载

1、定义

方法的重载就是指在同一个类中,方法名相同,但是参数不同的函数。

2、重载的原则

  • 方法名称必须相同
  • 参数列表必须不同(参数个数不同、参数类型不同、参数顺序不同等)
  • 方法的返回类型可以相同也可以不同
  • 仅仅返回类型不同不是重载

三、可变参数

1、定义

即参数类型里面加上省略号,且具有可变参数必须放到最后面,一个方法中只能指定一个可变参数。如下:

public static void add(double a,int...i){
        for (int j=0; j<i.length;j++) {
            System.out.println(i[j]);
        }
    }

四、例子

写一个计算器,能够实现加减乘除,并且能够循环接收新的数据,通过用户交互实现

public class Calculator {
    public static void main(String[] args) {
        //写一个计算器,能够实现加减乘除,并且能够循环接收新的数据,通过用户交互实现
        Scanner scanner = new Scanner(System.in);
        //输入数据
        //方式一:
        /*System.out.println("请输入运算符:");
        String operator = scanner.nextLine();
        //要想使用nextLine,必须把nextLine放在最开始输入的地方,输入后按回车跳到下一个输入。
        //若是放在第一个nextDouble或者第二个nextDouble之后,运行之后控制台会直接跳过输入运算符这一步		   骤
        System.out.println("请输入第一个数:");
        double a = scanner.nextDouble();
        System.out.println("请输入第二个数:");
        double b = scanner.nextDouble();*/
        
        //方式二:
        System.out.println("请输入第一个数:");
        double a = scanner.nextDouble();
        System.out.println("请输入运算符:");
        String operator = scanner.next();//此处使用next
        System.out.println("请输入第二个数:");
        double b = scanner.nextDouble();
        //关闭Scanner
        scanner.close();

        //创建对象
        Calculator calculator = new Calculator();
        //用result作为接收计算结果的对象
        double result = 0;
        switch (operator){
            case "+":
                result = calculator.add(a,b);
                break;
            case "-":
                result = calculator.subtraction(a,b);
                break;
            case "*":
                result = calculator.multiplication(a,b);
                break;
            case "/":
                result = calculator.division(a,b);
                break;
        }
        System.out.println("计算结果为:"+result);
    }
	//创建加减乘除方法
    public double add(double a,double b){
        return a+b;
    }
    public double subtraction(double a,double b){
        return a-b;
    }
    public double multiplication(double a,double b){
        return a*b;
    }
    public double division(double a,double b){
        return a/b;
    }
}
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值