方法的重载

 

package method;

public class Demo002 {
    public static void main(String[] args) {
         int max = max(20.0, 30.0);
         /*
         double max = max(20, 30);
         这个语句走的是int返回类型最后的结果是30 只不过又把int转化成double类型了
         但是int不能转换成double类型必须强制转换
         总结 :
         都是先匹配参数列表匹配对了就往下走
         在main方法里的类型可以是比返回类型高的 也可以是一样的
         如果是高的就把返回类型往高的转
         如果是一样的就正常输出
          */
        System.out.println(max);
    }
    /*
    方法名称:max
    参数列表:int num1,int num2
    返回类型:public static int 这个int是返回类型
     */
    public static int max (int num1,int num2 ){
        if (num1==num2){
            System.out.println("a==b");
            return 0;//如果没有这句话会输出a==b 20
                     //有就会输出a==b 0
        }
        int result = 0;
        if (num1>num2){
            result = num1;
        }else {
            result = num2;
        }
        return result;
    }
    public static int max (double num1,double num2 ){
        if (num1==num2){
            System.out.println("a==b");
            return 0;
        }
        double result = 0;
        if (num1>num2){
            result = num1;
        }else {
            result = num2;
        }
        return  (int) result;//一切转换都是为了和返回值类型相同
    }
}

 

posted @ 2023-11-19 22:21  Cloudhahaha  阅读(7)  评论(0)    收藏  举报