看完别和我说你不会可变参数

看完别和我说你不会可变参数,第1张

看完别和我说你不会可变参数 前言

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

一、使用前提

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

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

注意事项:

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

如下这两种方法是错误的

二、底层原理

参数省略其实是通过数组实现,通过输入多个参数,每一个参数都将被存放在数组中


可以发现输出的是一个地址,这也证明了其底层原理为地址

三、 使用方法

需要多少个数据就传入多少个参数
之后可以通过数组下标来获取传递的某个位置的参数。

但是大部分我们都会将可变参数的写法设置为下面这样
我们知道Object类是所有类型的父类,因此可以接收任意类型的参数,因此使用这样的可变参数可以增加效率,当然,安全性也下降了

当然,既然是数组,你也需要注意数组越界问题哦

欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/zaji/4746182.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2022-11-08
下一篇 2022-11-08

发表评论

登录后才能评论

评论列表(0条)

保存