方法 方法的调用,有参,无参的方法传递

/*
    方法:是将具有独立功能的代码块组织成为一个整体,使其具有特殊功能的代码集

    定义格式:
        public static void 方法名 ( ) {
           //方法体
       }

   调用格式:
       方法名();
 */

public class MethodDemo {
    public static void main(String[] args) {
        //调用方法
        System.out.println("这是方法1的标示");
        isEvenNumber();
        isEvenNumber();
        isEvenNumber();
        isEvenNumber();
        isEvenNumber();



    }



    //需求:定义一个方法,在方法中定义一个变量,判断该数据是否是偶数     方法是不带主函数的   而且是单独的   true
    public static  void isEvenNumber() {
        //定义变量
        int number = 10;

        //判断该数据是否是偶数
        if(number%2 == 0) {
            System.out.println(true);
        } else {
            System.out.println(false);
        }
    }


}

/*
    需求:
        设计一个方法用于打印两个数中的较大数

    思路:
        1:定义一个方法,用于打印两个数字中的较大数,例如getMax()
        2:方法中定义两个变量,用于保存两个数字
        3:使用分支语句分两种情况对两个数字的大小关系进行处理
        4:在main()方法中调用定义好的方法
 */
public class MethodTest {
    public static void main(String[] args) {
        //在main()方法中调用定义好的方法
        getMax();
    }

    //定义一个方法,用于打印两个数字中的较大数,例如getMax()

    public static void getMax() {
        //方法中定义两个变量,用于保存两个数字
        int a = 10;
        int b = 20;

        //使用分支语句分两种情况对两个数字的大小关系进行处理
        if(a > b) {
            System.out.println(a);
        } else {
            System.out.println(b);
        }
    }

}

测试

public class test {
    public static void main(String[] args) {
        //变量       参数传进来
        int a=11;


        //判断  作为一个方法
        if (a%2==0){
            System.out.println("偶数");
        }else {
            System.out.println("奇数");
        }
    }
}

/*
    带参数方法的定义和调用

    定义格式:
        public static void 方法名(参数) { … … }

   调用格式:
        方法名(参数);
 */
public class MethodDemo {

    //主函数  只写参数    调用方法
    public static void main(String[] args) {
        //常量值的调用
        isEvenNumber(11);
        isEvenNumber(20);



    }

    //需求:定义一个方法,该方法接收一个参数,判断该数据是否是偶数    只写判断
    public static void isEvenNumber(int number) {

        if(number%2 == 0) {
            System.out.println(true);
        } else {
            System.out.println(false);
        }
    }

}

/*
    需求:
        设计一个方法用于打印两个数中的较大数,数据来自于方法参数

    思路:
        1:定义一个方法,用于打印两个数字中的较大数,例如getMax()
        2:为方法定义两个参数,用于接收两个数字
        3:使用分支语句分两种情况对两个数字的大小关系进行处理
        4:在main()方法中调用定义好的方法(使用常量)
        5:在main()方法中调用定义好的方法(使用变量)
 */
public class MethodTest {
    public static void main(String[] args) {
        //在main()方法中调用定义好的方法(使用常量)
//        getMax(10,20);  //20
        //调用方法的时候,人家要几个,你就给几个,人家要什么类型的,你就给什么类型的
        //getMax(30);
        //getMax(10.0,20.0);

        //在main()方法中调用定义好的方法(使用变量)
//        int a = 100;
//        int b = 2000;
//        getMax(a, b);
    }

    //定义一个方法,用于打印两个数字中的较大数,例如getMax()
    //为方法定义两个参数,用于接收两个数字
    //方法重载    除了方法名一样   其他的啥都不一样
    public static void getMax(int a, int b) {
        //使用分支语句分两种情况对两个数字的大小关系进行处理
        if(a > b) {
            System.out.println(a);
        } else {
            System.out.println(b);
        }
    }

}

/*
    带返回值方法的定义和调用

    定义格式:
        public static 数据类型 方法名(参数) {
           return 数据;
       }

   调用格式:
        1:方法名(参数);
        2:数据类型 变量名 = 方法名(参数);
 */
public class MethodDemo {
    public static void main(String[] args) {
        //1:方法名(参数);
        //isEvenNumber(10);
        //true;

        //2:数据类型 变量名 = 方法名(参数);
        boolean flag = isEvenNumber(10);//true
        //boolean flag = true;
        System.out.println(flag);
    }

    //需求:定义一个方法,该方法接收一个参数,判断该数据是否是偶数,并返回真假值
    public static boolean isEvenNumber(int number) {
        if(number%2 == 0) {
            return true;
        } else {
            return false;
        }
    }

}

/*
    需求:
        设计一个方法可以获取两个数的较大值,数据来自于参数

    思路:
        1:定义一个方法,用于获取两个数字中的较大数
        2:使用分支语句分两种情况对两个数字的大小关系进行处理
        3:根据题设分别设置两种情况下对应的返回结果
        4:在main()方法中调用定义好的方法并使用变量保存
        5:在main()方法中调用定义好的方法并直接打印结果
 */
public class MethodTest {
    public static void main(String[] args) {
        //在main()方法中调用定义好的方法并使用变量保存
        int result = getMax(10,20);
        System.out.println(result);

        //在main()方法中调用定义好的方法并直接打印结果
        System.out.println(getMax(99,88));

    }

    //定义一个方法,用于获取两个数字中的较大数
    public static int getMax(int a, int b) {
        //使用分支语句分两种情况对两个数字的大小关系进行处理
        //根据题设分别设置两种情况下对应的返回结果
        if(a > b) {
            return a;
        } else {
            return b;
        }
    }
}

/*
    方法注意事项:
        方法不能嵌套定义
        void表示无返回值,可以省略return,也可以单独的书写return,后面不加数据
 */
public class MethodDemo {
    public static void main(String[] args) {
        int i=140;
        methodTwo(i);

    }



    public static int methodTwo(int i) {
        int a=5;
        int sum=i+a;
        System.out.println(sum);   //145
        return sum;


    }

}

/*
    方法重载:
        多个方法在同一个类中
        多个方法具有相同的方法名
        多个方法的参数不相同,类型不同或者数量不同

        与返回值无关
        在调用的时候,Java虚拟机会通过参数的不同来区分同名的方法
 */
public class MethodDemo {
    public static void main(String[] args) {
        //调用方法
        int sums = sums(22,33);
        System.out.println(sums);   //55

        double sum=sum(3.0,4.0);
        System.out.println(sum); //7.0

        int sum1 = sum(1, 2, 3);
        System.out.println(sum1);   //6
    }

    //需求1:求两个int类型数据和的方法
    public static int sums(int a, int b) {
        return a + b;
    }


    //需求2:求两个double类型数据和的方法
    public static double sum(double a, double b) {
        return a + b;  //7.0
    }


    //需求3:求三个int类型数据和的方法
    public static int sum(int a, int b, int c) {
        return a + b + c;
    }

}

/*
    需求:
        使用方法重载的思想,设计比较两个整数是否相同的方法,兼容全整数类型(byte,short,int,long)

    思路:
        1:定义比较两个数字的是否相同的方法compare()方法,参数选择两个int型参数
        2:定义对应的重载方法,变更对应的参数类型,参数变更为两个long型参数
        3:定义所有的重载方法,两个byte类型与两个short类型参数
        4:完成方法的调用,测试运行结果
 */
public class MethodTest {
    public static void main(String[] args) {
        //调用方法

        System.out.println(compare(10, 20));  //fasle
        System.out.println(compare((byte) 10, (byte) 20));//false
        System.out.println(compare((short) 10, (short) 20));//false
        System.out.println(compare(20L, 20L));//true
    }

    //int
    public static boolean compare(int a, int b) {
        System.out.println("int");
        return a == b;
    }

    //byte
    public static boolean compare(byte a, byte b) {
        System.out.println("byte");
        return a == b;
    }

    //short
    public static boolean compare(short a, short b) {
        System.out.println("short");
        return a == b;
    }

    //long
    public static boolean compare(long a, long b) {
        System.out.println("long");
        return a == b;
    }

}

/*
    对于基本数据类型的参数,形式参数的改变,不影响实际参数的值
 */
public class ArgsDemo01 {
    public static void main(String[] args) {
        int number = 100;
        System.out.println("调用change方法前:" + number);

        
        int change = change(number);
        System.out.println(change);

    }

    //方法
    public static int change(int number) {
        number = 200+number;
        return number;
    }
}

/*
    对于引用类型的参数,形式参数的改变,影响实际参数的值   作业
 */
/*
    对于引用类型的参数,形式参数的改变,影响实际参数的值   作业
 */
public class ArgsDemo02 {
    public static void main(String[] args) {
        int[] arr = {10, 20, 30};
        change(arr);
        change01(arr);
        System.out.println(arr[1]);
        System.out.println(arr[0]);

    }

    public static void change(int[] arr) {
        arr[1] = 3000;
    }
    public static void change01(int[] arr) {
        arr[0] = 6000;
    }
}

/*
    数组遍历

    需求:
        设计一个方法用于数组遍历,要求遍历的结果是在一行上的。例如:[11, 22, 33, 44, 55]

    思路:
        1:因为要求结果在一行上输出,所以这里需要在学习一个新的输出语句System.out.print(“内容”);
            System.out.println(“内容”); 输出内容并换行
            System.out.print(“内容”); 输出内容不换行
            System.out.println(); 起到换行的作用
        2:定义一个数组,用静态初始化完成数组元素初始化
        3:定义一个方法,用数组遍历通用格式对数组进行遍历
        4:用新的输出语句修改遍历操作
        5:调用遍历方法
 */
public class MethodTest01 {
    public static void main(String[] args) {


        //定义一个数组,用静态初始化完成数组元素初始化
        int[] arr = {11, 22, 33, 44, 55};

        //调用方法
        printArray(arr);
    }



    public static void printArray(int[] arr) {
        for(int x=0; x<arr.length; x++) {
            System.out.println(arr[x]);
        }
    }



//    public static void printArray(int[] arr) {
//        System.out.print("[");
//        for(int x=0; x<arr.length; x++) {
//            if(x == arr.length-1) {
//                System.out.print("最终"+arr[x]);
//            } else {
//                System.out.print("这里"+arr[x]+", ");
//            }
//        }
//        System.out.println("]");
//    }
}

/*
    数组最大值

    需求:
        设计一个方法用于获取数组中元素的最大值,调用方法并输出结果

    思路:
        1:定义一个数组,用静态初始化完成数组元素初始化
        2:定义一个方法,用来获取数组中的最大值
        3:调用获取最大值方法,用变量接收返回结果
        4:把结果输出在控制台
 */
public class test01 {
    public static void main(String[] args) {
        java.util.Scanner s = new java.util.Scanner(System.in);
        System.out.println("请输入今天是本周的第 天,将为您显示今天的活动");
        int i = s.nextInt();
        if (i < 1 || i >= 8) {
            System.out.println("对不起,输入错误!");
        } else {
            if (i < 2) {
                System.out.println("跑步");
            } else if (i < 3) {
                System.out.println("游泳");
            } else if (i < 4) {
                System.out.println("慢走");
            } else if (i < 5) {
                System.out.println("动感单车");
            } else if (i < 6) {
                System.out.println("拳击");
            } else if (i < 7) {
                System.out.println("爬山");
            } else {
                System.out.println("好好吃一顿");
            }
        }
    }
}

作业

public class test02 {
    public static void main(String[] args) {
        java.util.Scanner s = new java.util.Scanner(System.in);
        System.out.println("请输入今天是本周的第 天,将为您显示今天的活动");
        int num =s.nextInt();
        switch (num){
            case 1 :
                System.out.println("跑步");
                break;
            case 2 :
                System.out.println("游泳");
                break;
            case 3 :
                System.out.println("慢走");
                break;
            case 4 :
                System.out.println("动感单车");
                break;
            case 5 :
                System.out.println("拳击");
                break;
            case 6 :
                System.out.println("爬山");
                break;
            case 7 :
                System.out.println("好好吃一顿");
                break;
            default :
                System.out.println("对不起,您输入的数字不合法");
        }
    }
}

作业

public class test003 {
    public static void main(String[] args) {
        double num1 = 10;
        double num2 = 5;
        char operator = '+';
        double result = 0;

        switch (operator) {
            case '+':
                result = num1 + num2;
                break;
            case '-':
                result = num1 - num2;
                break;
            case '*':
                result = num1 * num2;
                break;
            case '/':
                if (num2 != 0) {
                    result = num1 / num2;
                } else {
                    System.out.println("Division by zero is not allowed.");
                    return;
                }
                break;
            default:
                System.out.println("Invalid operator.");
                return;
        }

        System.out.println("The result is: " + result);
    }
}

public class zuoye {

    public static void main(String[] args) {
        int[] numbers = {1, 2, 3, 4, 5};
        sum(numbers);
    }
    public static void sum(int[] numbers) {
        int sum = 0;
        for (int number : numbers) {
            sum += number;
        }
        System.out.println("The sum of the elements in the array is: " + sum);
    }



}

作业

public class zuoye01 {
    public static void main(String[] args) {

        sum('*',1,2);


    }
    public static void sum(char operator,double num1,double num2) {
        double result = 0;
        switch (operator) {
            case '+':
                result = num1 + num2;
                break;
            case '-':
                result = num1 - num2;
                break;
            case '*':
                result = num1 * num2;
                break;
            case '/':
                if (num2 != 0) {
                    result = num1 / num2;
                } else {
                    System.out.println("Division by zero is not allowed.");
                    return;
                }
                break;
            default:
                System.out.println("Invalid operator.");
                return;
        }

        System.out.println("The result is: " + result);

    }
}

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值