JavaSE 可变参数的方法重载

 1 /**
 2  * 可变参数的方法重载
 3  */
 4 class A {
 5     public void test(int a, int b) {
 6         System.out.println(a+", "+b);
 7     }
 8
 9     public void test(int...params) {
10         for(int i=0; i<params.length; i++) {
11             if(i!=0) {
12                 System.out.print(", ");
13             }
14             System.out.print(params[i]);
15         }
16     }
17
18     public static void main(String[] args) {
19         A a = new A();
20         a.test(1,2);
21         a.test(1,2,3);
22     }
23 }

本程序不会出现编译错误,可变参数的方法一样可以与普通方法构成重载。

时间: 2024-10-05 10:48:40

JavaSE 可变参数的方法重载的相关文章

16 可变参数列表和重载问题(最后选择可变参数列表)

package com.wys.java; /** * 关于可变参数列表和重载问题 * @author snape * @version 1.0 * */ public class ArgsDemo2 { //可变参数列表所在方法是最后被访问的 //带可变参数的方法 public int plus(int n, int m){ System.out.println("不带可变参数的方法被调用"); return m+n; } //不带可变参数的方法 public int plus(in

JDK5新特性之 可变参数的方法

可变参数的方法:不知道这个方法该定义多少个参数 注意: > 参数实际上是数组 > 必须写在参数列表最后一个 package cn.itcast.day24.varparam; import java.lang.reflect.Type; /** * * JDK5新特性之 可变参数 * 定义方法时,不知道该定义多少个参数 * * 格式: * 修饰符 方法返回值 方法名(数据类型 ... 变量名){} * * 注意: * 可变参数实际上是一个数组 * 可变参数必须写在方法的参数列表的最后 * */

什么是可变长度的参数,方法重载,递归

什么是可变长度的参数 a)         类似于public int add(int ... num){} i.              使用这种可变长度的参数,我们可以在实参位置输入不定个数的值>=0个 ii.              当然可变参数前仍可以添加其它的参数 b)        类似于public int add(double num1,int ... num2){} i.              一个方法中可变参数只能放在最后,并且有且仅有一个,使用时和数组类似,相当于将

JDK5 新特性之 可变参数的方法(2)---asList

> Arrays.asList(T - a)方法的使用 >UnsupportedOperationException分析     Arrays.asList(T - a)方法的使用 package cn.itcast.day24.varparam; import java.util.Arrays; import java.util.List; /** * * public static <T> List<T> asList(T... a):把数组转为集合 * * 注意:

Java基础:可变参数(Varagrs)的使用注意事项

因为在先前学习java的过程中,有涉及到可变参数,但没有太深入的去学习.所以最近自己找了些相关资料,想加深了解.下面就是学习整理后的内容了. 在JDK1.5后,定义方法时,可以使用同类型个数不确定的参数. 使用可变参数定义方法时,方法实际上是把这些不确定数目的参数隐式地都装进一个数组中, 然后方法再从这个数组中取出元素来使用. 也就是说,方法使用可变参数,和JDK1.4中方法使用数组参数时的处理方式是一样的,都是取出数组元素来使用. 一.定义方法: 返回值 方法名(参数类型...可变参数名) 1

java可变参数方法重载的注意事项

1.可变参数方法与数组参数方法重载 public class MethodParams{ //带可变参数的方法 public void hello(String ...params) { System.out.println("执行带可变参数的方法,参数个数为:" + params.length); } //带数组参数的方法 public void hello(String[] params) { System.out.println("执行带数组参数的方法,数组长度为:&q

方法的可变参数

当几个方法对相同类型的元素(个数不同)进行相同的操作时,首先有两种方式 1.定义不同个数变量的参数列表的重载函数,例如: public void show(int a){} public void show(int a, int b){} public void show(int a, int b, int c){} 2.定义一个参数为数组的函数,每次操作时创建不同的数组,例如: public void show(int[] a){} int[] a = {1,2}; show(a); int[

巩固java(六)----java中可变参数方法(非常实用哦)

java提供了可变参数的方法,即方法的参数个数可以不确定,用"..."定义. import java.util.ArrayList; import java.util.List; public class VariableParameter { //求若干个整型数中的最大值 public int getMax(int... items){ //定义可变参数items int max = Integer.MIN_VALUE; //次数为int能表示的最小值,值为-2147483648 f

C# 中的可变参数方法(VarArgs)

首先需要明确一点:这里提到的可变参数方法,指的是具有 CallingConventions.VarArgs 调用约定的方法,而不是包含 params 参数的方法.可以通过MethodBase.CallingConvention 属性来获取某个方法的调用约定. 举个常见的例子来说,C 语言的 printf 方法大多数人应该都知道,它的作用是向标准输出流(stdout)写入格式化字符串,printf 的方法签名是: int printf(const char * format, ...); 方法签名