JDK1.5新特性3-可变参数
来源:互联网 发布:软件会员卡积分下载 编辑:程序博客网 时间:2024/05/16 15:06
可变参数在方法中的具体格式:
修饰符 返回值类型 方法名(数据类型... 变量名){}
通过实例明确概念要点:
- (1) 定义方法时,不确定该定义多少个参数,用可变参数。可变参数个数取值范围为自然数。
public class ChangeableArgs{ public static void main(String[] args) { dealArray(); dealArray(1); dealArray(1, 2); } public static void dealArray(int... arr) { for (int i : arr) System.out.print(i + " "); System.out.println(); }}
输出:
1 1 2
- (2) 可变参数本质上是一个数组。
public class ChangeableArgs{ public static void main(String[] args) { } public static void dealArray(int... arr) { } public static void dealArray(int[] arr) { // 此处编译报错:“Duplicate method dealArray”,即“重复的方法定义” }}
- (3) 可变参数是兼容数组类参数的,但是数组类参数却无法兼容可变参数。
public class ChangeableArgs{ public static void main(String args[]){ int[] arr= {1, 2, 3}; dealArray(arr); // 通过编译,正常运行 } public static void dealArray(int... arr){ for (int i : arr) System.out.print(i +" "); System.out.println(); } }
而
public class ChangeableArgs{ public static void main(String args[]){ dealArray(1,2,3); // 编译错误 } public static void dealArray(int[] arr){ for (int i : arr) System.out.print(i +" "); System.out.println(); } }
- (4) 如果一个方法有可变参数,并且有多个参数,那么,可变参数必须是最后一个
public class ChangeableArgs { public static void main(String args[]){ } public static void dealArray(int count, int... arr){ } public static void dealArray(int... arr, int count){//编译报错,可变参数类型应该作为参数列表的最后一项 } }
- (5) 可变参数匹配优先级最低
public class ChangeableArgs { public static void main(String args[]){ dealArray(1, 2); // 最终打印2 } public static void dealArray(int... arr){ System.out.println("1"); } public static void dealArray(int count1, int count2){ System.out.println("2"); } }
参考文章
微wx笑的Java方法的可变参数个数
0 0
- JDK1.5新特性3-可变参数
- jdk1.5新特性之------->可变参数
- JDK1.5新特性--可变参数
- jdk1.5新特性之可变参数
- JDK1.5新特性-可变参数
- 53、jdk1.5新特性-可变参数
- JDK1.5新特性之---可变参数
- 黑马程序员-jdk1.5的新特性---可变参数
- jdk1.5.0 新特性---可变参数
- jdk1.5新特征-可变长参数
- 盘点JDK1.5的新特性(二)——可变参数
- jdk1.5新特性——可变参数、增强for循环、枚举
- [java]jdk1.5的新特性----可变参数、增强for循环、枚举、单例模式
- 【黑马程序员】jdk1.5的新特性之可变参数和增强for循环
- 黑马程序员—JDK1.5新特性(增强for循环、可变参数、静态导入)
- 黑马程序员---JDK1.5新特性之(增强for循环、可变参数、静态导入)
- Java学习笔记之JDK1.5新特性(三):可变参数
- JAVA1.5新特性----可变参数
- kNN实现
- 备忘录模式
- 动态网站加速,cdn义不容辞
- linux apache反向代理配置(附配置文件)
- Spring 整合 Redis
- JDK1.5新特性3-可变参数
- HTTP 协议详解
- Noip2016 游记
- InfoPath Error “此文档库已经被重命名或删除,或者网络问题导致文件无法保存…” 的解决方案
- Kinect2.0之使用KinectSDK自带的KinectStudio进行数据采集
- mysqli和pdo链接方式
- Java NIO系列教程(七) FileChannel
- 读取并显示dicom文件的图像数据和覆盖层数据
- ADB命令