栏目分类:
子分类:
返回
名师互学网用户登录
快速导航关闭
当前搜索
当前分类
子分类
实用工具
热门搜索
名师互学网 > IT > 软件开发 > 后端开发 > Java

【Java】方法的重载 (求最大值方法的重载+求和的重载)

Java 更新时间: 发布时间: IT归档 最新发布 模块sitemap 名妆网 法律咨询 聚返吧 英语巴士网 伯小乐 网商动力

【Java】方法的重载 (求最大值方法的重载+求和的重载)

 有些时候我们需要用一个函数同时兼容多种参数的情况, 我们就可以使用到方法重载

重载的规则 :

针对同一个类:
1.方法名相同
2.方法的参数不同(参数个数或者参数类型)
3.方法的返回值类型不影响重载

列题一 :
求最大值方法的重载
在同一个类中定义多个方法:要求不仅可以求两个整数的最大值,还可以求两个小数的最大值,以及两个小数和一个整数的大小关系

代码如下 :

 public static int max(int a,int b){
        return a>b?a:b;
    }

    public static double max(double a,double b){
        return a>b?a:b;
    }

    public static double max(double a,double b,int c){
        return max(a,b)>c?max(a,b):c;
    }


    public static void main(String[] args) {
        System.out.println("请输入要比较的数字个数:");
        Scanner scanner=new Scanner(System.in);
        int num=scanner.nextInt();
        if (num==2){
            System.out.println("请输入要比较的数字");
            int a=scanner.nextInt();
            int b=scanner.nextInt();
            System.out.println(max(a, b));
            double c=scanner.nextDouble();
            double d=scanner.nextDouble();
            System.out.println(max(c, d));
        }
        if (num==3){
            System.out.println("请输入要比较的数字");
            double a1=scanner.nextDouble();
            double b1=scanner.nextDouble();
            int c1=scanner.nextInt();
            System.out.println(max(a1, b1, c1));
        }
    }

运行如下:


当两个方法的名字相同, 参数也相同, 但是返回值不同的时候, 不构成重载.

例题 2 :求和的重载

在同一个类中,分别定义求两个整数的方法 和 三个小数之和的方法。 并执行代码,求出结果

代码如下 :

import java.util.Scanner;

public class TestDemo {
    public static int sum(int a,int b){
        return a+b;
    }

    public static double sum(double c,double d,double e){
        return c+d+e;
    }


    public static void main(String[] args) {
        System.out.println("请输入要计算的数字个数 :");
        Scanner scanner=new Scanner(System.in);
        int num=scanner.nextInt();
        if(num==2){
            System.out.println("请输入两个整数“:");
            int a=scanner.nextInt();
            int b=scanner.nextInt();
            int sum1=sum(a,b);
            System.out.println("和为:"+sum1);
        }
        else if (num==3){
            System.out.println("请输入三个小数");
            double c=scanner.nextDouble();
            double d=scanner.nextDouble();
            double e=scanner.nextDouble();
            double sum2= sum(c,d,e);
            System.out.println("和为:"+sum2);
        }
        else {
            System.out.println("输入不规范,请重新输入");
        }
    }

}


关于Java中方法的重载以及相应例题就介绍到这 , 如果大家觉得对自己有所帮助,欢迎多多点赞收藏 ~

转载请注明:文章转载自 www.mshxw.com
本文地址:https://www.mshxw.com/it/630761.html
我们一直用心在做
关于我们 文章归档 网站地图 联系我们

版权所有 (c)2021-2022 MSHXW.COM

ICP备案号:晋ICP备2021003244-6号