JAVA方法的重裁以及可变个数形参

/*

 * 方法的重裁

 *

 * 1、定义:同一个类当中允许出现同名的方法,只要它们传递的参       数个数或者参数类型不一致即可

 * 2、如:sort()

 *

 * 3、判断是否重载:方法名、参数列表

 *                                         与返回值类型,结构体无关

 *

 * 4、通过对象调用方法时,如何确定某一个指定的方法:

 *                 方法名、参数列表

 */

public class overload {
	//求数组的最大值1
	public double getmax(double[] arr) {
		int n = arr.length;
		double maxflag=arr[0];
		for(int i=1;i<n;i++) {
			if(arr[i]>maxflag) {
				maxflag=arr[i];
			}
		}
		return maxflag;
	}
	//求数组的最大值2
	public int getmax(int[] arr) {
		int n = arr.length;
		int maxflag=arr[0];
		for(int i=1;i<n;i++) {
			if(arr[i]>maxflag) {
				maxflag=arr[i];
			}
		}
		return maxflag;
	}
}
类的实例化:
public class overloadtest {

	public static void main(String[] args) {
		overload ovt=new overload();
		int [] arr2 = new int [] {12,45,7,8,4,0,-65,79,100,15};
		double[]arr3=new double[]{14.1,2.62,3.9,10.6};
		int ovtmax1= ovt.getmax(arr2);
		System.out.println("a1的最大值为:"+ovtmax1);
		double ovtmax2= ovt.getmax(arr3);
		System.out.println("a1的最大值为:"+ovtmax2);//同样是getmax方法,但是传递的参数不同

	}

}

/*

 * 可变形参个数的方法

 * 具体使用

 *                 2.1当调用可变形参的方法时,可以时一个或者多个

 *                 2.2可变个数形参的方法与同一个防止同方法名,参数不同的方法构成重裁

 *                 2.3可变个数形参的方法与同一个防止同方法名,参数相同的方法不构成重裁

 */

public class methodargs {
	public void show(int i,String ...strs ) {//可变形参必须声明在末尾
		System.out.println("show:"+i+" "+strs[0]+" "+strs[1]);//可变个数形参的参数列表strs看作一个数组,调用的时候要用下标调用
	}
	//public void show(String [] strs ) {
		//System.out.println("show:"+strs[0]+" "+strs[1]);
	//}
}
类的实例化:
public class methodargstest {

	public static void main(String[] args) {
		methodargs mt = new methodargs();
		mt.show(9,"hello","world");

	}

}

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值