JAVA不定参数探秘
来源:互联网 发布:ubuntu 未发现软件包 编辑:程序博客网 时间:2024/05/19 10:39
JAVA中可以使用不定参数,
例如 public void test(String ...args){...} 这里test方法可以传入参数的情况是:
1.不使用参数,如test()
2.使用一个或多个参数,如test("1"); test("1","2");
3.使用数组 test(new String[]{"1","2"});
在test方法内部,我们可以像使用数组的访问方式一样来访问参数args.如:args[i] 这样就有一个好处,在参数输入不定的情况下,使用这个方法非常简单。非常易于使用。
有几点需要注意的就是
我们见到的是不定参数,其实编译器编译之后它会将这个test(String ...args){...} 编译成为数组调用的方式test(String[] args){} ,这个过程是编译中就完成了的,我们程序编写过程中看不到这个实际的转换过程。 而我们调用这个test方法时,编译器同样会把参数转换成new String[]{""}的形式调用,所以,本质上来讲,就是一个以数组为参数的调用方法,我们看不到而已,具体详细情况可以反编译class类就可以明了。
如果同时同一个类中还有一个test方法,例如test(),或者test(String args) ,我们采用 test("1")的方式调用,我们就可以知道了,因为有这个方法存在,所以编译器就会优先使用这个 test(String args) 方法,而不会使用不定参数的方法,这个原因很明确,因为不定参数本质上是一个数组为参数的方式。所以,如果你定义了一个不定参数的test方法,如果你再定义一个test(String[] args)的以数组为参数的方法,编译器就会提示你方法定义重复。道理就在这里。
希望以上的解释能够帮助到大家。
- JAVA不定参数探秘
- JAVA不定参数探秘
- JAVA不定参数探秘
- JAVA不定参数探秘
- java不定参数
- Java不定长度参数
- java不定参数
- java 不定参数
- Java不定参数
- JAVA不定参数
- Java不定长度参数
- java不定参数"..."详解
- java不定长参数
- 【java】... 不定长度参数
- Java不定长度参数
- Java不定长参数
- Java不定参数
- java 不定参数
- [转]JasperReport用户手册之五
- Hibernate 参数设置一览表
- java初学者常用开发工具介绍
- [转]JasperReport用户手册之六
- EJB在weblogic下遇到的Exception:Exception in javax.naming.NameNotFoundException: While trying to lookup 'ejb.com/genuitec/trader/ejb/T
- JAVA不定参数探秘
- ASP.NET 脚本侵入概述
- 学习C++,你注意了么?
- SQL-Server 中调用DOS命令
- 网站灰黑色CSS滤镜代码
- 算法导论读书笔记 第一章 算法在计算中的作用
- 怎样读取acpi table
- SIPp 学习笔记 一 (安装)
- SAP用户出口的类型