方法及其重载

方法

一 、方法概述和格式说明

1、方法概述

方法就是完成特定功能的代码块,在很多语言中都有函数的定义,但在JAVA语言中,我们将其称之为方法。

2、格式

	修饰符 返回值类型 方法名(参数类型 参数名1,参数类型 参数名2 ....){
		方法体;
		return 返回值;
	}
方法的格式详细说明:
	(1): 修饰符:比较多,后面会详细介绍。目前使用  public static
	(2): 返回值类型:用于限定返回值的数据类型
	(3): 方法名:就是一个名称,它的存在是为了方便我们调用方法
	(4): 参数类型:限定调用方法时传入参数的数据类型
	(5): 参数名:是一个变量,接收调用方法时传入的参数(这个参数其实有一个专业的名词,被称之为形式参数,			    它的作用是用来接收实际参数的)
	(6): 方法体:完成功能的代码
	(7): return:结束方法以及返回方法指定类型的值 
	(8): 返回值:就是功能的结果,由return带回,带回给调用者

二、方法的注意事项

A:	方法不调用不执行
B:	方法与方法是平级关系,不能嵌套定义
C:	方法定义的时候参数之间用逗号隔开
D:	方法调用的时候不用在传递数据类型
E:	如果方法有明确的返回值,一定要由return带回一个值

三、例题

例一:数字三角

1、请编写程序,打印出如下图形,并在main方法中调用
1
12
123
1234
12345
......
import java.util.Scanner;
public class TuXing {
    public static void tuXing(int n){
        for(int i=1;i<=n;i++){
            for (int i1 = 1; i1 <= i; i1++) {
                System.out.print(i1);
            }
            System.out.println();
        }
    }
    public static void main(String[] args) {
        Scanner sc = new Scanner(System.in);
        System.out.println("请输入行数:");
        int n = sc.nextInt();
        tuXing(n);
    }
}

例二:1、请编写一个方法,求出1-n之间的偶数和与奇数和的差值,并在 main方法中调用

import java.util.Scanner;
public class OuAdd {
    public static int  ouAdd(int n) {
        int sum=0;
        int sum2=0;
        for (int i = 1; i <= n; i++) {
            if(i%2==0){
                sum+=i;
            }else {
                sum2+=i;
            }
        }
        return sum-sum2;
    }
    public static void main(String[] args) {
        Scanner sc = new Scanner(System.in);
        System.out.println("请输入n的值:");
        int n = sc.nextInt();
        int cha=ouAdd(n);
        System.out.println("偶数和与奇数和的差值为:"+cha);
    }
}

四、方法的重载

1、概述:

	在同一个类中,允许存在一个以上的同名方法,只要它们的参数列表不同,与返回值无关。
参数列表不同:
	A:参数个数不同
	B:参数类型不同

2、示例:

使用三元运算符完成如下练习(数据来自于键盘录入,使用方法的重载):
	比较两个数是否相等
	获取两个数中最大值
	获取三个数中最大值
import java.util.Scanner;
public class SanYuan {
    public static void main(String[] args) {
        Scanner scanner = new Scanner(System.in);
        System.out.println("请输入第一个数据:");
        int num1 = scanner.nextInt();
        System.out.println("请输入第二个数据:");
        int num2 = scanner.nextInt();
        System.out.println("请输入第三个数据:");
        int num3 = scanner.nextInt();
        boolean f = equal(num1, num2);
        System.out.println("前两个数是否相等:" + f);
        int max1 = quite(num2, num3);
        System.out.println("后两个数的最大值为:" + max1);
        int max2 = quite(num1, num2, num3);
        System.out.println("三个数的最大值为:" + max2);
    }
    public static boolean equal(int n1, int n2) {
        return n1 == n2 ? true : false;
    }
    public static int quite(int n1, int n2) {
        return n1 > n2 ? n1 : n2;
    }
    public static int quite(int n1, int n2, int n3) {
        return (n1 > n2 ? n1 : n2) > n3 ? (n1 > n2 ? n1 : n2) : n3;
    }
}
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值