2021-08-25 JAVA学习之关于方法

方法

一.方法概述

  • 定义:方法就是可以完成某个特定功能的代码块
  • 作用:提高代码的复用性

二.方法的格式及调用

无参数无返回值的定义及调用

格式:public static void 方法名(){
方法体;
}
调用:方法名();

有参数无返回值的定义及调用

格式:public static void 方法名(参数){
方法体;
}
调用:方法名(参数);

带返回值的定义及调用

格式:public static 返回值数据类型 方法名(参数){
方法体;
}

直接调用:方法名(参数);
赋值调用:数据类型 变量名 = 方法名(参数);
输出调用;System.out.println(方法名(参数));

三.形参和实参

形参:全称形式参数,是指方法定义中的参数

实参:全称实际参数,调用方法传递的参数

四.方法的重载

  • 定义:在同一个类中,出现了方法名相同,参数列表不相同的方法
  • 简单记:同一个类中,方法名相同,参数不同的方法且与返回值无关;其中参数不同指的是个数不同,类型不同,顺序不同

五.案例

  1. 在方法中判断一个数据是奇偶数

    public class case01 {
        public static void main(String[] args) {
            Scanner scanner = new Scanner(System.in);
            System.out.println("请输入一个数据");
            int number = scanner.nextInt();
            panduan(number);
        }
        public static void panduan(int number) {
            if (number % 2 == 0) {
                System.out.println("这个数是偶数");
            } else {
                System.out.println("这个数是奇数");
            }
        }
    }
    
  2. 在方法中打印n-m之间的奇数

    public class case02 {
        public static void main(String[] args) {
            Scanner scanner = new Scanner(System.in);
            System.out.println("请输出第一个整数");
            int n = scanner.nextInt();
            System.out.println("请输出第二个整数");
            int m = scanner.nextInt();
            print(n, m);
        }
        public static void print(int n, int m) {
            System.out.println("n-m之间的奇数分别为:");
            for (int i = n; i <= m; i++) {
                if (i % 2 != 0) {
                    System.out.print(i + " ");
                }
            }
        }
    }
    
  3. 在方法中接收两个数据求出两个整数的最大值并返回

    public class case03 {
        public static void main(String[] args) {
            Scanner scanner = new Scanner(System.in);
            System.out.println("请输入第一个整数");
            int a = scanner.nextInt();
            System.out.println("请输入第二个整数");
            int b = scanner.nextInt();
            System.out.println("这两个整数的最大值为:" + getMax(a, b));
        }
        public static int getMax(int a, int b) {
            int max=a>b?a:b;
            return max;
    
        }
    }
    
    
  4. 接收两个数据求和并返回

    public class case04 {
        public static void main(String[] args) {
            Scanner scanner = new Scanner(System.in);
            System.out.println("请输入第一个数据");
            int a = scanner.nextInt();
            System.out.println("请输入第二个数据");
            int b = scanner.nextInt();
            System.out.println("这两个数据的和为" + getSum(a, b));
        }
        public static int getSum(int a,int b){
            int sum =0;
            sum =a+b;
            return sum;
        }
    }
    
    
  5. 比较两个数据是否相等

    public class MethodDemo7 {
        public static void main(String[] args) {
            System.out.println(compare(10, 20));
            System.out.println("============");
            System.out.println(compare(10L, 20L));
            System.out.println("============");
            System.out.println(compare((byte)10, (byte)20));
            System.out.println("============");
            System.out.println(compare((short)10, (short)20));
        }
    
        public static boolean compare(byte b1, byte b2) {
            System.out.println("byte");
            return b1 == b2;
        }
    
        public static boolean compare(short b1, short b2) {
            System.out.println("short");
            return b1 == b2;
        }
    
        public static boolean compare(int b1, int b2) {
            System.out.println("int");
            return b1 == b2;
        }
    
        public static boolean compare(long b1, long b2) {
            System.out.println("long");
            return b1 == b2;
        }
    }
    
  6. 在方法中求数组的最值

    public class Test3 {
        public static void main(String[] args) {
            int[] arr = {33,22,11,55,44};
    
            System.out.println(getMaxOrMin(arr, true));
            System.out.println(getMaxOrMin(arr, false));
        }
        /*
            方法的功能 : 接收一个数组 , 返回此数组中最值
            两个明确
                返回值类型 : int
                参数列表 : int[] arr , boolean flag
         */
        public static int getMaxOrMin(int[] arr ,  boolean flag){
            int max = arr[0];
            int min = arr[0];
            // 遍历数组
            for (int i = 0; i < arr.length; i++) {
                if(arr[i] > max){
                    max = arr[i];
                }
                if(arr[i] < min){
                    min = arr[i];
                }
            }
    //        if(flag == true){
            if(flag){
                return max;
            }else{
                return min;
            }
        }
    }
    
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值