java中可变参数方法——寻找最大值

今天在看反射机制相关知识的时候,诞生了一个想法,就是调用方法时是否可以传入多个参数(参数数量是可变的),很显然,使用高大上的泛型和集合我也不能够清晰的阐述明白。

于是,我在翻阅资料之后,发现了一种平时没怎么见过的方式。

下面是代码:

//这是主函数,调用寻找最大值的方法
	public static void main(String[] args) {
		//为了能让大家看懂,我假设要输入的参数都是double类型的的常量参数
		double max = max(-12,-5,-10,-3.2);
		System.out.println(max);

	}
//执行方法
	private static double max(double... values) {//不要怀疑,...就是合法的语法
		double max = Double.NEGATIVE_INFINITY;//无穷小(负无穷)
		for (double d : values) {//for each
			if (d > max) {
				max = d;
			}
		}
		return max;
	}

 

你可能感兴趣的:(java实用总结,java,可变参数,多个参数,调用方法传参)