**
* Created by Lenovo on 2017/12/10.
* java中可变长参数
*/
public class reflect04 { //m1有一个int类型的可比变长参数
//m1在调用的时候实参可以是0-N个
public static void m1(int... a){
System.out.println("int型可变长参数执行...."+a);
} //如果有可以精确匹配的方法则调用该方法,不会再执行可变长参数的那个方法
public static void m1(int a){
System.out.println("精确匹配执行....."+a);
} //可变长参数可以等同看做一个数组
public static void m2(String... args){
for(int i=0;i<args.length;i++){
System.out.println("m2都喜欢的运动如下:"+args[i]);
}
} public static void m3(Class... args) throws Exception{ for(int i=0;i<args.length;i++){
Class arg = args[i];
System.out.println(arg.newInstance());
}
} //可变长参数只能出现一次,并且只能出现在所有参数的最后一位
//错误实例:
//public static void m4(String... args,int i){}
public static void main(String[] args) throws Exception { //执行m1
m1(1); //调用精确匹配的m1方法
m1(1,2);
m1(1,2,3);
m1(1,2,3,4); //执行m2
m2("旅游","看电影","游泳","打球"); //执行m3
m3(Date.class,Employlee.class); //m1输出
//m1精确输出:精确匹配执行.....1
//int型可变长参数执行....[I@330bedb4
//int型可变长参数执行....[I@2503dbd3
//int型可变长参数执行....[I@4b67cf4d //m2输出
//m2都喜欢的运动如下:旅游
//m2都喜欢的运动如下:看电影
//m2都喜欢的运动如下:游泳
//m2都喜欢的运动如下:打球 //m3输出
//Sun Dec 10 21:59:58 CST 2017
//空参构造方法执行.....
//Employlee{name='null'}
}
}

java中可变长参数的更多相关文章

  1. Java中可变长参数的使用及注意事项

    在Java5 中提供了变长参数(varargs),也就是在方法定义中可以使用个数不确定的参数,对于同一方法可以使用不同个数的参数调用,例如print("hello");print( ...

  2. Java中可变长参数的方法

    原文转自:http://www.cnblogs.com/lanxuezaipiao/p/3190673.html 在Java5 中提供了变长参数(varargs),也就是在方法定义中可以使用个数不确定 ...

  3. java中可变长参数的定义及使用方法

    JAVA中可以为方法定义可变长参数( Varargs)来匹配不确定数量的多个参数,其定义用“...”表示.其实,这类似于为方法传了一个数组,且在使用方法上也和数组相同,如下: public void ...

  4. Java 数组 可变长参数 实例

    可以把类型相同但个数可变的参数传递给方法,方法中的参数声明如下: typeName...parameterName (类型名...参数名) 在方法声明中,指定类型后紧跟着省略号...,只能给方法指定一 ...

  5. 关于C中可变长参数

    前言 可变长参数指函数的参数个数在调用时才能确定的函数参数.基本上各种语言都支持可变长参数,在特定情形下,可变长参数使用起来非常方便.c语言中函数可变长参数使用“...”来表示,同时可变长参数只能位于 ...

  6. Java中的可变长参数

    可变长参数的定义 与一般方法没多大差别,只不过形参多了...(三个点) 方法名(数据类型 ... 变量名){} 小案例: public class ParamDemo { public static ...

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

    java提供了可变参数的方法,即方法的参数个数可以不确定,用"..."定义. import java.util.ArrayList; import java.util.List; ...

  8. Java 可变长参数列表

    Java中定义了变长参数,允许在调用方法时传入不定长度的参数. 定义及调用 在定义方法时,在最后一个形参后加上三点 …,就表示该形参可以接受多个参数值,多个参数值被当成数组传入.上述定义有几个要点需要 ...

  9. 在Python中使用可变长参数列表

    函数定义 在函数定义中使用*args和**kwargs传递可变长参数. *args用作传递非命名键值可变长参数列表(位置参数); **kwargs用作传递键值可变长参数列表 函数调用 在调用函数时,使 ...

随机推荐

  1. web离线应用 Web SQL Database

    web sql database 是html5废弃的一个新特性,它提供了基本的关系数据库功能,使用 `SQL` 来操纵客户端数据库的 API,这些 API 是异步的,规范中使用的方言是SQLlite ...

  2. wamp环境下如何安装redis扩展

    Redis安装 wamp环境安装redis扩展 首先在自己本地项目中phpinfo(); 查看php版本; (php版本是5.5, ts-vcll表示MSVC11 (Visual C++ 2012), ...

  3. 虚拟机Ubuntu无法上网问题解决过程

    查看了网上大部分经验贴,都没有解决问题,只好自己思考琢磨,以下是思考解决过程 1.查看文件配置 2.查看虚拟机网络配置方式 3.查看硬件驱动是否存在 4.配置完文件ifcfg-eth0后重启,无效(虚 ...

  4. win7及以上系统打开chm空白或显示"无法打开"的2个解决方案

    1:在文件上右键单击属性.选择解锁. 2:确保文件路径中没有特殊字符.比如"#".如果路径中存在特殊字符,chm文件可能找不到路径而无法显示.如 d:\资料\c#\***.chm. ...

  5. tomcat警告setting property 'debug' to '0' did not find a matching property

    在使用tomcat6.0版本结合myeclipse进行java web项目,运行程序显示setting property 'debug' to '0' did not find a matching ...

  6. 三十天学不会TCP,UDP/IP编程--MAC地址和数据链路层

    这篇文章主要是来做(da)推(guang)介(gao)的!由于这两年接触到了比较多的这方面的知识,不想忘了,我决定把他们记录下来,所以决定在GitBook用半年时间上面写下来,这是目前写的一节,后面会 ...

  7. How to get table pg_stat_user_functions.

    修改配置文件postgres.conf track_functions = all                   # none, pl, all 或者 在当前事物中设置 postgres=# s ...

  8. PHP获取一周的日期

    /** * 获取一周日期 * @param $time 时间戳 * @param $format 转换格式 */ function get_week($time, $format = "Y- ...

  9. C#使用ManagementObjectSearcher来获取系统信息时会有out of memory的异常

    在开发环境下,时不时出现out of memory的异常,最后是在服务界面重新启动 Windows Management Instrumentation后就好了.

  10. 毕达哥拉斯树(pythagorasTree)原理解析及canvas动画实现

    以前就看到了这个东西,由于太忙了最近才有时间来实现这个; 该文章适合有一定 canvas 基础的人阅读; 首先说说他的原理: The construction of the Pythagoras tr ...