博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
java 变参数_Java_可变参数
阅读量:5976 次
发布时间:2019-06-20

本文共 953 字,大约阅读时间需要 3 分钟。

可变参数:是jdk1.5后出现的新特性

1.什么时候需要使用可变参数?

在已经确定了参数的类型,但不知道要输入多少个参数的时候,可以使用可变参数

2.可变参数的格式 : 修饰符 返回值类型 方法名字(数据类型 ...变量名) 如 int ...i

这样就创建了一个名字叫i的数组

3.可变参数的原理?

可变参数的底层是一个数组,也就是你创建一个数组来存储了你的变量(可变参数),存入参数的时候确定数组的长度。可传递的可变参数的数量为0-n个

4.下面有一个例子

我要定义n个整数相加的方法,但我不确定n是多少,有时候是2个有时候用到10个参数,这个时候我就可以用可变参数,数据类型为int

代码如下:

//可变参数应用

public class VariableParameter {

public static void main(String[] args) {

/*

我要定义n个整数相加的方法,但我不确定n是多少,有时候是2个有时候用到10个参数

,这个时候我就可以用可变参数,数据类型为int

*/

int d=add(10,50,100,500);//因为是可变参数所以我这里可以添加 无限个参数

System.out.println(d);

}

public static int add(int ...arr){//可变参数 数据类型 ...变量名字 / int ...arr

int sum=0;

for(int j:arr){//可变数组其实就是创建了个变量为arr的数组来让你传参,所以可以用增强for循环

sum+=j;//累加求和

}

return sum;//返回和

}

}

记得可变参数的底层是数组,通过 int ...arr 其实就是创建了个名字叫arr的数组!

5.可变参数的注意事项

一个方法里面只能够有一个可变参数,也就是说不允许有(int ...i,String ...s)这样的情况出现,不可以有1个以上的可变参数但是允许存在普通的传参例如(int j,String s,int ...i)但可变参数一定要写在最后不然的话就会报错。

演示例子如下:

这里报错是因为一个方法里面存在两个可变参数

这里是因为不把可变参数写在最后面

正确的写法如下:

希望文章对你有帮助

转载地址:http://haiox.baihongyu.com/

你可能感兴趣的文章
【Visual Studio 扩展工具】使用 ComponentOne迷你图控件,进行可视化数据趋势分析...
查看>>
10分钟理解CSS3 FlexBox
查看>>
使用Charles抓包
查看>>
python机器学习实战(一)
查看>>
Vue CLI 3 多页应用项目的搭建
查看>>
[LeetCode] 296. Best Meeting Point
查看>>
使用Jest操作ElasticSearch 报错:No time zone indicator问题的解决方案
查看>>
在Linux系统里安装Virtual Box的详细步骤
查看>>
PostgreSQL的实践一:初识
查看>>
让您的Eclipse具有千变万化的外观
查看>>
Logstash 参考指南(使用Filebeat Modules配置示例)
查看>>
工具的学习使用(二):快捷键、工具、批处理
查看>>
vue实现原理初探
查看>>
基于react native的登录界面demo 超简易教程 redux版
查看>>
react入门笔记
查看>>
开发错误集锦
查看>>
请求数据
查看>>
vue-music(1)音乐播发器 项目开发记录
查看>>
Vue经验总结
查看>>
信息论(一):概述
查看>>