【Java】可变参数

前言

C语言中,如果一个函数中可能会需要用到不同数量的参数,那么会在函数定义时使用…来省略一些参数来表示这个函数可能的参数数量是不确定的。
那么,Java在jdk1.5之后也实现了这个功能,现在来介绍如何实现

一、使用前提

这个新特性的使用前提是:

参数的数据类型已经确定,但是参数的数目不确定

注意事项:

一个方法的参数列表,只能有一个可变参数
如果方法的参数有多个,那么可变参数必须写在参数列表的末尾

如下这两种方法是错误的
在这里插入图片描述

二、底层原理

参数省略其实是通过数组实现,通过输入多个参数,每一个参数都将被存放在数组中
在这里插入图片描述

在这里插入图片描述
可以发现输出的是一个地址,这也证明了其底层原理为地址

三、 使用方法

需要多少个数据就传入多少个参数
之后可以通过数组下标来获取传递的某个位置的参数。
在这里插入图片描述
但是大部分我们都会将可变参数的写法设置为下面这样
我们知道Object类是所有类型的父类,因此可以接收任意类型的参数,因此使用这样的可变参数可以增加效率,当然,安全性也下降了
在这里插入图片描述
当然,既然是数组,你也需要注意数组越界问题哦
在这里插入图片描述

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

ZhangBlossom

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值